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:
authorBastien Montagne <b.mont29@gmail.com>2020-02-17 17:47:24 +0300
committerBastien Montagne <b.mont29@gmail.com>2020-02-17 17:49:39 +0300
commit3a53ae8d4bd3b18bdf0a9468742518584f8f49c1 (patch)
tree596c88fb7f175e4c9d6f80118ead347e970ca09c /source/blender/blenkernel/intern/curve.c
parent852cdd476b5572b56418d377e379c07253363eff (diff)
Fix T73817: Shape key users not properly mapped when duplicating their obdata.
Once again those crappy weirdos IDs with their crappy weirdos 'loopback' pointers... This is a quick hack for now, think id_copy needs to be reworked a bit to supported re-entrant sub-ID copying (also an issue with nodes I bet).
Diffstat (limited to 'source/blender/blenkernel/intern/curve.c')
-rw-r--r--source/blender/blenkernel/intern/curve.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index fab212f0944..fe4f814ca1f 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -205,6 +205,8 @@ void BKE_curve_copy_data(Main *bmain, Curve *cu_dst, const Curve *cu_src, const
if (cu_src->key && (flag & LIB_ID_COPY_SHAPEKEY)) {
BKE_id_copy_ex(bmain, &cu_src->key->id, (ID **)&cu_dst->key, flag);
+ /* XXX This is not nice, we need to make BKE_id_copy_ex fully re-entrant... */
+ cu_dst->key->from = &cu_dst->id;
}
cu_dst->editnurb = NULL;