Bläddra i källkod

Fix Crash with `GraphNode`

When using `queue_free()` on GraphNodes, `p_from` can become `nullprt`.
This PR adds a check to prevent crashes in these situations.
Markus Sauermann 9 månader sedan
förälder
incheckning
54373160df
1 ändrade filer med 3 tillägg och 0 borttagningar
  1. 3 0
      scene/gui/graph_edit_arranger.cpp

+ 3 - 0
scene/gui/graph_edit_arranger.cpp

@@ -79,6 +79,9 @@ void GraphEditArranger::arrange_nodes() {
 
 			for (const Ref<GraphEdit::Connection> &connection : connection_list) {
 				GraphNode *p_from = Object::cast_to<GraphNode>(node_names[connection->from_node]);
+				if (!p_from) {
+					continue;
+				}
 				if (connection->to_node == graph_element->get_name() && (p_from->is_selected() || arrange_entire_graph) && connection->to_node != connection->from_node) {
 					if (!s.has(p_from->get_name())) {
 						s.insert(p_from->get_name());