Browse Source

Fix Node::move_child() crash if moving to the end plus one

Fixes #9820.
Pedro J. Estébanez 8 years ago
parent
commit
6c1b7fd899
1 changed files with 5 additions and 0 deletions
  1. 5 0
      scene/main/node.cpp

+ 5 - 0
scene/main/node.cpp

@@ -311,6 +311,11 @@ void Node::move_child(Node *p_child, int p_pos) {
 		ERR_FAIL_COND(data.blocked > 0);
 	}
 
+	// Specifying one place beyond the end
+	// means the same as moving to the last position
+	if (p_pos == data.children.size())
+		p_pos--;
+
 	if (p_child->data.pos == p_pos)
 		return; //do nothing