diff --git a/objects/o_dialog_add_node/Create_0.gml b/objects/o_dialog_add_node/Create_0.gml index 6219059c9..a8e593b4e 100644 --- a/objects/o_dialog_add_node/Create_0.gml +++ b/objects/o_dialog_add_node/Create_0.gml @@ -277,12 +277,16 @@ event_inherited(); ds_list_add(_list, "Favourites"); for( var i = 0; i < array_length(global.FAV_NODES); i++ ) { var _nodeIndex = global.FAV_NODES[i]; + if(!ds_map_exists(ALL_NODES, _nodeIndex)) continue; + ds_list_add(_list, ALL_NODES[? _nodeIndex]); } ds_list_add(_list, "Recents"); for( var i = 0; i < array_length(global.RECENT_NODES); i++ ) { var _nodeIndex = global.RECENT_NODES[i]; + if(!ds_map_exists(ALL_NODES, _nodeIndex)) continue; + ds_list_add(_list, ALL_NODES[? _nodeIndex]); } } diff --git a/scripts/node_composite/node_composite.gml b/scripts/node_composite/node_composite.gml index 68d3e3f7f..0f6a3c0ad 100644 --- a/scripts/node_composite/node_composite.gml +++ b/scripts/node_composite/node_composite.gml @@ -735,7 +735,8 @@ function Node_Composite(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) overlay_w = ww; overlay_h = hh; - if(is_surface(base)) surface_size_to(_outSurf, ww, hh, cDep); + if(is_surface(base)) + _outSurf = surface_size_to(_outSurf, ww, hh, cDep); for(var i = 0; i < 2; i++) { temp_surface[i] = surface_verify(temp_surface[i], surface_get_width(_outSurf), surface_get_height(_outSurf), cDep); diff --git a/scripts/shader_functions/shader_functions.gml b/scripts/shader_functions/shader_functions.gml index d430c4f7d..5e96db14e 100644 --- a/scripts/shader_functions/shader_functions.gml +++ b/scripts/shader_functions/shader_functions.gml @@ -76,6 +76,12 @@ function shader_set_surface(sampler, surface) { } function surface_set_shader(surface, shader = sh_sample, clear = true, blend = BLEND.over) { + if(!is_surface(surface)) { + __surface_set = false; + return; + } + + __surface_set = true; surface_set_target(surface); if(clear) DRAW_CLEAR; @@ -90,6 +96,8 @@ function shader_set_surface(sampler, surface) { } function surface_reset_shader() { + if(!__surface_set) return; + gpu_set_tex_filter(false); BLEND_NORMAL; surface_reset_target();