From 7df165ce942886dfe65e4f4c435fc995ee328ebd Mon Sep 17 00:00:00 2001 From: Robert Yevdokimov <105675984+ryevdokimov@users.noreply.github.com> Date: Sun, 16 Nov 2025 13:43:18 -0600 Subject: [PATCH] Fix preview CSG interfering with itself during drag and drop --- editor/scene/3d/node_3d_editor_plugin.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/editor/scene/3d/node_3d_editor_plugin.cpp b/editor/scene/3d/node_3d_editor_plugin.cpp index 113dd13562c..a61b7314432 100644 --- a/editor/scene/3d/node_3d_editor_plugin.cpp +++ b/editor/scene/3d/node_3d_editor_plugin.cpp @@ -4852,13 +4852,13 @@ Vector3 Node3DEditorViewport::_get_instance_position(const Point2 &p_pos, Node3D HashSet rids; - if (!preview_node->is_inside_tree() && !ruler->is_inside_tree()) { + if (preview_node && preview_node->get_child_count() > 0) { + _insert_rid_recursive(preview_node, rids); + } else if (!preview_node->is_inside_tree() && !ruler->is_inside_tree()) { const List &selection = editor_selection->get_top_selected_node_list(); Node3D *first_selected_node = Object::cast_to(selection.front()->get()); - Array children = first_selected_node->get_children(); - if (first_selected_node) { _insert_rid_recursive(first_selected_node, rids); }