mirror of
https://github.com/godotengine/godot.git
synced 2026-01-03 18:11:19 +03:00
Merge pull request #112401 from xuhuisheng/dev/queue-free
Fix crash on queue free scene node in editor
This commit is contained in:
@@ -279,7 +279,13 @@ void Node::_notification(int p_notification) {
|
|||||||
ERR_PRINT("Attempted to free a node that is currently added to the SceneTree from a thread. This is not permitted, use queue_free() instead. Node has not been freed.");
|
ERR_PRINT("Attempted to free a node that is currently added to the SceneTree from a thread. This is not permitted, use queue_free() instead. Node has not been freed.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
#ifdef TOOLS_ENABLED
|
||||||
|
if (Engine::get_singleton()->is_editor_hint() && data.tree && this == data.tree->get_edited_scene_root()) {
|
||||||
|
cancel_free();
|
||||||
|
ERR_PRINT(vformat("Something attempted to free the root Node of a scene (\"%s\"). This is not supported inside the editor, so the Node was not freed.", get_name()));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (data.owner) {
|
if (data.owner) {
|
||||||
_clean_up_owner();
|
_clean_up_owner();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user