From 9af390ab67dff7113fef5bae6bde4133b922e3e1 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Thu, 26 May 2011 06:34:31 +0000 Subject: fix [#27485] Create new shapekey on lattice --- source/blender/blenkernel/intern/object.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c index 3523d1812a0..e2a07427ce2 100644 --- a/source/blender/blenkernel/intern/object.c +++ b/source/blender/blenkernel/intern/object.c @@ -3037,9 +3037,14 @@ static KeyBlock *insert_lattkey(Scene *scene, Object *ob, const char *name, int if(newkey || from_mix==FALSE) { kb= add_keyblock(key, name); - - /* create from lattice */ - latt_to_key(lt, kb); + if (!newkey) { + KeyBlock *basekb= (KeyBlock *)key->block.first; + kb->data= MEM_dupallocN(basekb->data); + kb->totelem= basekb->totelem; + } + else { + latt_to_key(lt, kb); + } } else { /* copy from current values */ @@ -3075,7 +3080,10 @@ static KeyBlock *insert_curvekey(Scene *scene, Object *ob, const char *name, int KeyBlock *basekb= (KeyBlock *)key->block.first; kb->data= MEM_dupallocN(basekb->data); kb->totelem= basekb->totelem; - } else curve_to_key(cu, kb, lb); + } + else { + curve_to_key(cu, kb, lb); + } } else { /* copy from current values */ -- cgit v1.2.3