Merge pull request #55659 from timothyqiu/boom

Fix crash when `update()` is called inside `_draw()`
This commit is contained in:
Rémi Verschelde 2021-12-06 22:39:02 +01:00 committed by GitHub
commit c1ed695f32
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -275,9 +275,6 @@ void CanvasItem::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_ENTER_TREE: {
ERR_FAIL_COND(!is_inside_tree());
_update_texture_filter_changed(false);
_update_texture_repeat_changed(false);
first_draw = true;
Node *parent = get_parent();
if (parent) {
@ -306,6 +303,10 @@ void CanvasItem::_notification(int p_what) {
}
}
_enter_canvas();
_update_texture_filter_changed(false);
_update_texture_repeat_changed(false);
if (!block_transform_notify && !xform_change.in_list()) {
get_tree()->xform_change_list.add(&xform_change);
}