Commit: 2eed1afd114fa7f3e7a1be530924e4f11b68128d
Author: Bastien Montagne
Date:   Thu Nov 4 17:15:34 2021 +0100
Branches: blender-v3.0-release
https://developer.blender.org/rB2eed1afd114fa7f3e7a1be530924e4f11b68128d

Fix T92778: Cloth Point Cache Name disappears after Make Library Override.

Cloth modifier had a unique, weird and weak way of copying its
pointcache, now make it use `BKE_ptcache_copy_list` like done for e.g.
particles or softbody data.

===================================================================

M       source/blender/modifiers/intern/MOD_cloth.c

===================================================================

diff --git a/source/blender/modifiers/intern/MOD_cloth.c 
b/source/blender/modifiers/intern/MOD_cloth.c
index c9d5ef73c49..8aff29dc17d 100644
--- a/source/blender/modifiers/intern/MOD_cloth.c
+++ b/source/blender/modifiers/intern/MOD_cloth.c
@@ -201,13 +201,9 @@ static void copyData(const ModifierData *md, ModifierData 
*target, const int fla
     tclmd->point_cache = clmd->point_cache;
   }
   else {
-    tclmd->point_cache = BKE_ptcache_add(&tclmd->ptcaches);
-    if (clmd->point_cache != NULL) {
-      tclmd->point_cache->step = clmd->point_cache->step;
-      tclmd->point_cache->startframe = clmd->point_cache->startframe;
-      tclmd->point_cache->endframe = clmd->point_cache->endframe;
-      tclmd->point_cache->flag |= (clmd->point_cache->flag & 
PTCACHE_FLAGS_COPY);
-    }
+    const int clmd_point_cache_index = BLI_findindex(&clmd->ptcaches, 
clmd->point_cache);
+    BKE_ptcache_copy_list(&tclmd->ptcaches, &clmd->ptcaches, flag);
+    tclmd->point_cache = BLI_findlink(&tclmd->ptcaches, 
clmd_point_cache_index);
   }
 
   tclmd->sim_parms = MEM_dupallocN(clmd->sim_parms);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to