summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShiqing <shiqing-thu18@yandex.com>2019-07-11 17:40:42 +0800
committerShiqing <shiqing-thu18@yandex.com>2019-07-11 17:40:42 +0800
commitc16e764bb2ae2f038abac8b1fc2518bba3dbf3db (patch)
tree9aea07ec613420bf9e857b0d57603b323e4146fc
parent49ce6bacc338d4279c121e13d4c7434d4318e4e4 (diff)
Fix #29478 multiple modals possibly freeze
-rw-r--r--scene/main/viewport.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp
index 24c8ee31b2..d147d43f50 100644
--- a/scene/main/viewport.cpp
+++ b/scene/main/viewport.cpp
@@ -2579,7 +2579,7 @@ void Viewport::_drop_physics_mouseover() {
List<Control *>::Element *Viewport::_gui_show_modal(Control *p_control) {
- gui.modal_stack.push_back(p_control);
+ List<Control *>::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<Control *>::Element *Viewport::_gui_show_modal(Control *p_control) {
_drop_mouse_focus();
}
- return gui.modal_stack.back();
+ return node;
}
Control *Viewport::_gui_get_focus_owner() {