Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnkit Meel <ankitjmeel@gmail.com>2020-10-26 12:36:55 +0300
committerAnkit Meel <ankitjmeel@gmail.com>2020-10-26 12:36:55 +0300
commit336a675c6442485f45dc52de1770ad4ccff06ea5 (patch)
treeecc9ee2bd629217e7e1388145036baaaa0297294
parent2c024bd335fef04cd7e49bdf39aee0d7b8241745 (diff)
parent2ddecfffc3d3a3a1db4ae45e8665caa2a85ab43a (diff)
Merge branch 'blender-v2.91-release' into master
-rw-r--r--source/blender/blenkernel/intern/lib_id_delete.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/lib_id_delete.c b/source/blender/blenkernel/intern/lib_id_delete.c
index 1e45a3c1163..25c48479ef9 100644
--- a/source/blender/blenkernel/intern/lib_id_delete.c
+++ b/source/blender/blenkernel/intern/lib_id_delete.c
@@ -261,7 +261,9 @@ static void id_delete(Main *bmain, const bool do_tagged_deletion)
bool keep_looping = true;
while (keep_looping) {
ID *id, *id_next;
- ID *last_remapped_id = tagged_deleted_ids.last;
+ /* Marked volatile to avoid a macOS Clang optimization bug. See T81077.
+ * #last_remapped_id.next is assumed to be NULL by optimizer which is wrong. */
+ volatile ID *last_remapped_id = tagged_deleted_ids.last;
keep_looping = false;
/* First tag and remove from Main all datablocks directly from target lib.