From 569966f3bbe82d768baf3fd26680462df22d29ad Mon Sep 17 00:00:00 2001 From: Juan Linietsky <reduzio@gmail.com> Date: Mon, 8 Aug 2016 19:04:12 -0300 Subject: [PATCH] prevent bug due to scripts not working in editor and notifier sending signals to it. (cherry picked from commit 37b5e99bc27a2a6a915accb814b0b618c66b0bb7) --- scene/2d/visibility_notifier_2d.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scene/2d/visibility_notifier_2d.cpp b/scene/2d/visibility_notifier_2d.cpp index 5411950976c..852bc187d23 100644 --- a/scene/2d/visibility_notifier_2d.cpp +++ b/scene/2d/visibility_notifier_2d.cpp @@ -40,6 +40,9 @@ void VisibilityNotifier2D::_enter_viewport(Viewport* p_viewport) { ERR_FAIL_COND(viewports.has(p_viewport)); viewports.insert(p_viewport); + if (is_inside_tree() && get_tree()->is_editor_hint()) + return; + if (viewports.size()==1) { emit_signal(SceneStringNames::get_singleton()->enter_screen); @@ -54,6 +57,9 @@ void VisibilityNotifier2D::_exit_viewport(Viewport* p_viewport){ ERR_FAIL_COND(!viewports.has(p_viewport)); viewports.erase(p_viewport); + if (is_inside_tree() && get_tree()->is_editor_hint()) + return; + emit_signal(SceneStringNames::get_singleton()->exit_viewport,p_viewport); if (viewports.size()==0) { emit_signal(SceneStringNames::get_singleton()->exit_screen);