fix [#26816] P(separate) an object messes up logic brick links

This commit is contained in:
Campbell Barton 2011-04-07 08:23:00 +00:00
parent 24b012c978
commit 24d6192f53

@ -1630,7 +1630,8 @@ static Base *object_add_duplicate_internal(Main *bmain, Scene *scene, Base *base
} }
/* single object duplicate, if dupflag==0, fully linked, else it uses the flags given */ /* single object duplicate, if dupflag==0, fully linked, else it uses the flags given */
/* leaves selection of base/object unaltered */ /* leaves selection of base/object unaltered.
* note: don't call this within a loop since clear_* funcs loop over the entire database. */
Base *ED_object_add_duplicate(Main *bmain, Scene *scene, Base *base, int dupflag) Base *ED_object_add_duplicate(Main *bmain, Scene *scene, Base *base, int dupflag)
{ {
Base *basen; Base *basen;
@ -1646,6 +1647,10 @@ Base *ED_object_add_duplicate(Main *bmain, Scene *scene, Base *base, int dupflag
ob= basen->object; ob= basen->object;
/* link own references to the newly duplicated data [#26816] */
object_relink(ob);
set_sca_new_poins_ob(ob);
DAG_scene_sort(bmain, scene); DAG_scene_sort(bmain, scene);
ED_render_id_flush_update(bmain, ob->data); ED_render_id_flush_update(bmain, ob->data);