From c4f9bfcf5e7ddfaeacdea6dc9b01868edf74182f Mon Sep 17 00:00:00 2001 From: Philipp Oeser Date: Sat, 10 Jul 2021 16:15:59 +0200 Subject: Fix T89765: boolean modifier collection refcount issue The 'collection' property is flagged PROP_ID_REFCOUNT, so the modifiers foreachIDLink functions should walk with IDWALK_CB_USER (instead of IDWALK_CB_NOP). Otherwise the modifier wont be included as a user for the collection (e.g. on file read); removing the collection from the modifier will decrement usercount though (which in worst case scenario makes the collection orphan and will result in data loss) Maniphest Tasks: T89765 Differential Revision: https://developer.blender.org/D11877 --- source/blender/modifiers/intern/MOD_boolean.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source/blender/modifiers') diff --git a/source/blender/modifiers/intern/MOD_boolean.cc b/source/blender/modifiers/intern/MOD_boolean.cc index 4b9b24e4e47..bdb791dc8e7 100644 --- a/source/blender/modifiers/intern/MOD_boolean.cc +++ b/source/blender/modifiers/intern/MOD_boolean.cc @@ -109,7 +109,7 @@ static void foreachIDLink(ModifierData *md, Object *ob, IDWalkFunc walk, void *u { BooleanModifierData *bmd = (BooleanModifierData *)md; - walk(userData, ob, (ID **)&bmd->collection, IDWALK_CB_NOP); + walk(userData, ob, (ID **)&bmd->collection, IDWALK_CB_USER); walk(userData, ob, (ID **)&bmd->object, IDWALK_CB_NOP); } -- cgit v1.2.3