From e422383a120a186391561dadf367369d2c5f9704 Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Thu, 28 Mar 2024 10:50:14 +0100 Subject: [PATCH] Fix #119925: Mask property keyframes missing when reload the file Caused by 6a79a6a24ab2 `Mask` `AnimData` is read by `BKE_animdata_blend_read_data` since above commit, so `BLO_read_data_address` on `AnimData` is already done there. However, `mask_blend_read_data` does it again Similar calls to `BLO_read_data_address` in `blend_read_data` callbacks were usually removed in 6a79a6a24ab2, Masks being an exception. Accoding to @mont29 the reason while a double remapping will fail is because there can only be one remapping from old addresses to new ones. Once the new address has been read, this new address cannot be used as 'key' again (it will likely map to nothing, or worse, remap to something completely unrelated!) Pull Request: https://projects.blender.org/blender/blender/pulls/119961 --- source/blender/blenkernel/intern/mask.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/source/blender/blenkernel/intern/mask.cc b/source/blender/blenkernel/intern/mask.cc index 4119d577179..f79144f4f62 100644 --- a/source/blender/blenkernel/intern/mask.cc +++ b/source/blender/blenkernel/intern/mask.cc @@ -131,7 +131,6 @@ static void mask_blend_write(BlendWriter *writer, ID *id, const void *id_address static void mask_blend_read_data(BlendDataReader *reader, ID *id) { Mask *mask = (Mask *)id; - BLO_read_data_address(reader, &mask->adt); BLO_read_list(reader, &mask->masklayers);