Fixed delete path2d node will crash editor
This commit is contained in:
parent
3b3c4b7585
commit
f07a377624
|
@ -516,7 +516,6 @@ void Path2DEditor::_node_visibility_changed() {
|
||||||
return;
|
return;
|
||||||
|
|
||||||
canvas_item_editor->get_viewport_control()->update();
|
canvas_item_editor->get_viewport_control()->update();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Path2DEditor::edit(Node *p_path2d) {
|
void Path2DEditor::edit(Node *p_path2d) {
|
||||||
|
@ -533,15 +532,15 @@ void Path2DEditor::edit(Node *p_path2d) {
|
||||||
if (!node->is_connected("visibility_changed", this, "_node_visibility_changed"))
|
if (!node->is_connected("visibility_changed", this, "_node_visibility_changed"))
|
||||||
node->connect("visibility_changed", this, "_node_visibility_changed");
|
node->connect("visibility_changed", this, "_node_visibility_changed");
|
||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if (canvas_item_editor->get_viewport_control()->is_connected("draw",this,"_canvas_draw"))
|
if (canvas_item_editor->get_viewport_control()->is_connected("draw",this,"_canvas_draw"))
|
||||||
canvas_item_editor->get_viewport_control()->disconnect("draw",this,"_canvas_draw");
|
canvas_item_editor->get_viewport_control()->disconnect("draw",this,"_canvas_draw");
|
||||||
if (node->is_connected("visibility_changed", this, "_node_visibility_changed"))
|
|
||||||
|
// node may have been deleted at this point
|
||||||
|
if (node && node->is_connected("visibility_changed", this, "_node_visibility_changed"))
|
||||||
node->disconnect("visibility_changed", this, "_node_visibility_changed");
|
node->disconnect("visibility_changed", this, "_node_visibility_changed");
|
||||||
node=NULL;
|
node=NULL;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue