diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-11-30 04:32:13 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-11-30 04:32:13 +0400 |
commit | 9b2df014d2ab714c4ff0ec9848f25a7db7f54142 (patch) | |
tree | a571e2a262f8d5ccbeb8b94fcc3d320c9dadb378 /source/blender/blenkernel/intern/speaker.c | |
parent | aff705c4305cf972992fd4750dccc8b7b4a343b8 (diff) |
fix [#29459] Crash making a linked object group local
was an error with make-local refactor & path updating.
Diffstat (limited to 'source/blender/blenkernel/intern/speaker.c')
-rw-r--r-- | source/blender/blenkernel/intern/speaker.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/speaker.c b/source/blender/blenkernel/intern/speaker.c index a14233e9179..d2c8a8031ee 100644 --- a/source/blender/blenkernel/intern/speaker.c +++ b/source/blender/blenkernel/intern/speaker.c @@ -106,19 +106,19 @@ void make_local_speaker(Speaker *spk) id_clear_lib_data(bmain, &spk->id); } else if(is_local && is_lib) { - Speaker *spkn= copy_speaker(spk); - spkn->id.us= 0; + Speaker *spk_new= copy_speaker(spk); + spk_new->id.us= 0; /* Remap paths of new ID using old library as base. */ - BKE_id_lib_local_paths(bmain, &spkn->id); + BKE_id_lib_local_paths(bmain, spk->id.lib, &spk_new->id); ob= bmain->object.first; while(ob) { if(ob->data==spk) { if(ob->id.lib==NULL) { - ob->data= spkn; - spkn->id.us++; + ob->data= spk_new; + spk_new->id.us++; spk->id.us--; } } |