2.5: Various Fixes
[blender-staging.git] / source / blender / blenloader / intern / readfile.c
index 8e33979b1346b45f48cf060c48b253dee92d2a1d..9f4a24565671e23b297ecbd8590947f8542d2581 100644 (file)
@@ -4345,9 +4345,10 @@ static void lib_link_screen(FileData *fd, Main *main)
                                        }
                                        else if(sl->spacetype==SPACE_BUTS) {
                                                SpaceButs *sbuts= (SpaceButs *)sl;
-                                               sbuts->lockpoin= NULL;
                                                sbuts->ri= NULL;
                                                sbuts->pinid= newlibadr(fd, sc->id.lib, sbuts->pinid);
+                                               sbuts->mainbo= sbuts->mainb;
+                                               sbuts->mainbuser= sbuts->mainb;
                                                if(main->versionfile<132)
                                                        butspace_version_132(sbuts);
                                        }
@@ -4556,7 +4557,6 @@ void lib_link_screen_restore(Main *newmain, bScreen *curscreen, Scene *curscene)
                                }
                                else if(sl->spacetype==SPACE_BUTS) {
                                        SpaceButs *sbuts= (SpaceButs *)sl;
-                                       sbuts->lockpoin= NULL;
                                        sbuts->pinid = restore_pointer_by_name(newmain, sbuts->pinid, 0);
                                        //XXX if (sbuts->ri) sbuts->ri->curtile = 0;
                                }
@@ -6267,7 +6267,6 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
        }
 
        if(main->versionfile <= 191) {
-               bScreen *sc= main->screen.first;
                Object *ob= main->object.first;
                Material *ma = main->mat.first;
 
@@ -6283,22 +6282,6 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
                        /*ob->quat[1]= 1.0f;*/ /* quats arnt used yet */
                        ob= ob->id.next;
                }
-
-               while(sc) {
-                       ScrArea *sa= sc->areabase.first;
-                       while(sa) {
-                               SpaceLink *sl= sa->spacedata.first;
-                               while(sl) {
-                                       if(sl->spacetype==SPACE_BUTS) {
-                                               SpaceButs *sbuts= (SpaceButs*) sl;
-                                               sbuts->scaflag= BUTS_SENS_LINK|BUTS_SENS_ACT|BUTS_CONT_ACT|BUTS_ACT_ACT|BUTS_ACT_LINK;
-                                       }
-                                       sl= sl->next;
-                               }
-                               sa= sa->next;
-                       }
-                       sc= sc->id.next;
-               }
        }
 
        if(main->versionfile <= 193) {
@@ -9764,7 +9747,8 @@ static void expand_particlesettings(FileData *fd, Main *mainvar, ParticleSetting
        expand_doit(fd, mainvar, part->eff_group);
        expand_doit(fd, mainvar, part->bb_ob);
        
-       expand_animdata(fd, mainvar, part->adt);
+       if(part->adt)
+               expand_animdata(fd, mainvar, part->adt);
 }
 
 static void expand_group(FileData *fd, Main *mainvar, Group *group)