From c16e764bb2ae2f038abac8b1fc2518bba3dbf3db Mon Sep 17 00:00:00 2001 From: Shiqing Date: Thu, 11 Jul 2019 17:40:42 +0800 Subject: [PATCH] Fix #29478 multiple modals possibly freeze --- scene/main/viewport.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp index 24c8ee31b24..d147d43f506 100644 --- a/scene/main/viewport.cpp +++ b/scene/main/viewport.cpp @@ -2579,7 +2579,7 @@ void Viewport::_drop_physics_mouseover() { List::Element *Viewport::_gui_show_modal(Control *p_control) { - gui.modal_stack.push_back(p_control); + List::Element *node = gui.modal_stack.push_back(p_control); if (gui.key_focus) p_control->_modal_set_prev_focus_owner(gui.key_focus->get_instance_id()); else @@ -2590,7 +2590,7 @@ List::Element *Viewport::_gui_show_modal(Control *p_control) { _drop_mouse_focus(); } - return gui.modal_stack.back(); + return node; } Control *Viewport::_gui_get_focus_owner() {