Possible fix for #20835: background images were not duplicated correctly

when splitting 3d view, causing them to be lost on file reload.
This commit is contained in:
Brecht Van Lommel
2010-01-30 10:16:11 +00:00
parent 91882d3ba1
commit d269ef8745

View File

@@ -290,6 +290,7 @@ static SpaceLink *view3d_duplicate(SpaceLink *sl)
{
View3D *v3do= (View3D *)sl;
View3D *v3dn= MEM_dupallocN(sl);
BGpic *bgpic;
/* clear or remove stuff from old */
@@ -304,13 +305,11 @@ static SpaceLink *view3d_duplicate(SpaceLink *sl)
/* copy or clear inside new stuff */
if(v3dn->bgpicbase.first) {
BGpic *bgpic;
for ( bgpic= v3dn->bgpicbase.first; bgpic; bgpic= bgpic->next ) {
bgpic= MEM_dupallocN(bgpic);
if(bgpic->ima) bgpic->ima->id.us++;
}
}
BLI_duplicatelist(&v3dn->bgpicbase, &v3do->bgpicbase);
for(bgpic= v3dn->bgpicbase.first; bgpic; bgpic= bgpic->next)
if(bgpic->ima)
bgpic->ima->id.us++;
v3dn->properties_storage= NULL;
return (SpaceLink *)v3dn;