Merge pull request #94810 from maidopi-usagi/graphedit_signal_fix

[GraphEdit] Correctly disconnect signal to `connection_layer`
This commit is contained in:
Rémi Verschelde 2024-07-30 12:28:55 +02:00
commit 5271a39279
No known key found for this signature in database
GPG Key ID: C3336907360768E1

View File

@ -695,6 +695,10 @@ void GraphEdit::remove_child_notify(Node *p_child) {
graph_element->disconnect("raise_request", callable_mp(this, &GraphEdit::_ensure_node_order_from));
graph_element->disconnect("resize_request", callable_mp(this, &GraphEdit::_graph_element_resize_request));
if (connections_layer != nullptr && connections_layer->is_inside_tree()) {
graph_element->disconnect(SceneStringName(item_rect_changed), callable_mp((CanvasItem *)connections_layer, &CanvasItem::queue_redraw));
}
// In case of the whole GraphEdit being destroyed these references can already be freed.
if (minimap != nullptr && minimap->is_inside_tree()) {
graph_element->disconnect(SceneStringName(item_rect_changed), callable_mp((CanvasItem *)minimap, &GraphEditMinimap::queue_redraw));