diff options
Diffstat (limited to 'source/blender/editors/object')
-rw-r--r-- | source/blender/editors/object/object_add.c | 3 | ||||
-rw-r--r-- | source/blender/editors/object/object_edit.c | 2 | ||||
-rw-r--r-- | source/blender/editors/object/object_relations.c | 3 |
3 files changed, 3 insertions, 5 deletions
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index 757c167c496..2299207eaa9 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -754,8 +754,7 @@ static int group_instance_add_exec(bContext *C, wmOperator *op) rename_id(&ob->id, group->id.name+2); ob->dup_group= group; ob->transflag |= OB_DUPLIGROUP; - id_us_plus(&group->id); - + id_lib_extern(&group->id); WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, ob); diff --git a/source/blender/editors/object/object_edit.c b/source/blender/editors/object/object_edit.c index d3226b1adf4..5fe09f0083e 100644 --- a/source/blender/editors/object/object_edit.c +++ b/source/blender/editors/object/object_edit.c @@ -1408,7 +1408,7 @@ void copy_attr(Scene *scene, View3D *v3d, short event) base->object->dup_group= ob->dup_group; if(ob->dup_group) - id_us_plus((ID *)ob->dup_group); + id_lib_extern(&ob->dup_group->id); } else if(event==7) { /* mass */ base->object->mass= ob->mass; diff --git a/source/blender/editors/object/object_relations.c b/source/blender/editors/object/object_relations.c index fbc6075796c..8d488eeabac 100644 --- a/source/blender/editors/object/object_relations.c +++ b/source/blender/editors/object/object_relations.c @@ -1250,10 +1250,9 @@ static int make_links_data_exec(bContext *C, wmOperator *op) BKE_copy_animdata_id((ID *)obt->data, (ID *)ob->data); break; case MAKE_LINKS_DUPLIGROUP: - if(ob->dup_group) ob->dup_group->id.us--; obt->dup_group= ob->dup_group; if(obt->dup_group) { - id_us_plus((ID *)obt->dup_group); + id_lib_extern(&obt->dup_group->id); obt->transflag |= OB_DUPLIGROUP; } break; |