Merge branch 'blender-v3.1-release'

This commit is contained in:
Sergey Sharybin 2022-03-02 11:45:48 +01:00
commit 51c5a4d85d
2 changed files with 6 additions and 9 deletions

View File

@ -3610,6 +3610,7 @@ static void image_free_tile(Image *ima, ImageTile *tile)
}
}
}
BKE_image_partial_update_mark_full_update(ima);
if (BKE_image_is_multiview(ima)) {
const int totviews = BLI_listbase_count(&ima->views);
@ -3950,6 +3951,7 @@ ImageTile *BKE_image_add_tile(struct Image *ima, int tile_number, const char *la
}
}
}
BKE_image_partial_update_mark_full_update(ima);
return tile;
}
@ -4015,6 +4017,7 @@ void BKE_image_reassign_tile(struct Image *ima, ImageTile *tile, int new_tile_nu
}
}
}
BKE_image_partial_update_mark_full_update(ima);
}
static int tile_sort_cb(const void *a, const void *b)

View File

@ -335,16 +335,10 @@ void DepsgraphNodeBuilder::begin_build()
* same as id_orig. Additionally, such ID might have been removed, which makes the check
* for whether id_cow is expanded to access freed memory. In order to deal with this we
* check whether CoW is needed based on a scalar value which does not lead to access of
* possibly deleted memory.
* Additionally, this saves some space in the map by skipping mapping for datablocks which
* do not need CoW, */
if (!deg_copy_on_write_is_needed(id_node->id_type)) {
id_node->id_cow = nullptr;
continue;
}
* possibly deleted memory. */
IDInfo *id_info = (IDInfo *)MEM_mallocN(sizeof(IDInfo), "depsgraph id info");
if (deg_copy_on_write_is_expanded(id_node->id_cow) && id_node->id_orig != id_node->id_cow) {
if (deg_copy_on_write_is_needed(id_node->id_type) &&
deg_copy_on_write_is_expanded(id_node->id_cow) && id_node->id_orig != id_node->id_cow) {
id_info->id_cow = id_node->id_cow;
}
else {