From f2b6eda2105a8518e09b4a44d60662753996cb94 Mon Sep 17 00:00:00 2001 From: jsjtxietian Date: Wed, 6 Sep 2023 11:11:07 +0800 Subject: [PATCH] Fix a crash when enable a plugin uses `make_mesh_previews` The bug happens when plugin tree is propagating mouse events (so it is blocked), but EditorProgress's dtor will make main editor focused and call update_plugins immediately which will update the blocked tree. (cherry picked from commit 7e3a76236983563201fdb358665fd748845ab023) --- editor/editor_plugin_settings.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/editor/editor_plugin_settings.cpp b/editor/editor_plugin_settings.cpp index 7f57619ac8d..525c9168cb7 100644 --- a/editor/editor_plugin_settings.cpp +++ b/editor/editor_plugin_settings.cpp @@ -243,7 +243,7 @@ EditorPluginSettings::EditorPluginSettings() { plugin_list->set_column_custom_minimum_width(3, 80 * EDSCALE); plugin_list->set_column_custom_minimum_width(4, 40 * EDSCALE); plugin_list->set_hide_root(true); - plugin_list->connect("item_edited", callable_mp(this, &EditorPluginSettings::_plugin_activity_changed)); + plugin_list->connect("item_edited", callable_mp(this, &EditorPluginSettings::_plugin_activity_changed), CONNECT_DEFERRED); VBoxContainer *mc = memnew(VBoxContainer); mc->add_child(plugin_list);