| 382 | } |
| 383 | |
| 384 | void Node::_propagate_after_exit_tree() { |
| 385 | // Clear owner if it was not part of the pruned branch |
| 386 | if (data.owner) { |
| 387 | if (!data.owner->is_ancestor_of(this)) { |
| 388 | _clean_up_owner(); |
| 389 | } |
| 390 | } |
| 391 | |
| 392 | data.blocked++; |
| 393 | |
| 394 | for (HashMap<StringName, Node *>::Iterator I = data.children.last(); I; --I) { |
| 395 | I->value->_propagate_after_exit_tree(); |
| 396 | } |
| 397 | |
| 398 | data.blocked--; |
| 399 | |
| 400 | emit_signal(SceneStringName(tree_exited)); |
| 401 | } |
| 402 | |
| 403 | void Node::_propagate_exit_tree() { |
| 404 | //block while removing children |
no test coverage detected