diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp index 368c81a0f49..dcf3dc5b1b9 100644 --- a/editor/plugins/canvas_item_editor_plugin.cpp +++ b/editor/plugins/canvas_item_editor_plugin.cpp @@ -4587,7 +4587,11 @@ void CanvasItemEditor::_popup_callback(int p_op) { } break; case SKELETON_MAKE_BONES: { HashMap &selection = editor_selection->get_selection(); - Node *editor_root = EditorNode::get_singleton()->get_edited_scene()->get_tree()->get_edited_scene_root(); + Node *editor_root = get_tree()->get_edited_scene_root(); + + if (!editor_root || selection.is_empty()) { + return; + } undo_redo->create_action(TTR("Create Custom Bone2D(s) from Node(s)")); for (const KeyValue &E : selection) {