Fix wrong proxy pointer hanging around after making all local

The issue was caused because of the following circumstances:

- Making All Local will just iterate all IDs and clear linked flags
- It will not do anything with objects which are already local (and
  since proxy rig is local nothing will be changing it).

This commit makes it so id_clear_lib_data() takes care of clearing
all related proxy pointers, avoiding situations when proxy rig will
point to a local armature.

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D1276
This commit is contained in:
2015-06-11 23:47:00 +02:00
parent 774e034d40
commit 7dae8e54cc
2 changed files with 10 additions and 1 deletions

View File

@@ -1609,7 +1609,7 @@ void BKE_object_make_local(Object *ob)
if (ob->id.lib == NULL) return;
ob->proxy = ob->proxy_from = NULL;
ob->proxy = ob->proxy_from = ob->proxy_group = NULL;
if (ob->id.us == 1) {
id_clear_lib_data(bmain, &ob->id);