forked from bartvdbraak/blender
Bug fix #21900
Issue with Library linking: if you already have libraries linked in, and you attempt to link more data, using internally already linked stuff (like a group with group links) the linkage would fail. It did resolve on save-load though. There's a long commented history in this code explaining it. I found out it was because of manual step-by-step linking versus normal file reads. In the first case, the "lib pointer map" was missing references.
This commit is contained in:
parent
5150884550
commit
cadd08b16f
@ -11481,7 +11481,11 @@ static void expand_doit(FileData *fd, Main *mainvar, void *old)
|
||||
* lib_indirect.blend but lib.blend does too, linking in a Scene or Group from lib.blend can result in an
|
||||
* empty without the dupli group referenced. Once you save and reload the group would appier. - Campbell */
|
||||
/* This crashes files, must look further into it */
|
||||
/*oldnewmap_insert(fd->libmap, bhead->old, id, 1);*/
|
||||
|
||||
/* Update: the issue is that in file reading, the oldnewmap is OK, but for existing data, it has to be
|
||||
inserted in the map to be found! */
|
||||
if(id->flag & LIB_PRE_EXISTING)
|
||||
oldnewmap_insert(fd->libmap, bhead->old, id, 1);
|
||||
|
||||
change_idid_adr_fd(fd, bhead->old, id);
|
||||
// commented because this can print way too much
|
||||
|
Loading…
Reference in New Issue
Block a user