diff options
author | Ton Roosendaal <ton@blender.org> | 2010-11-09 17:54:59 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2010-11-09 17:54:59 +0300 |
commit | 4c122988320d866b16a06ea4404d278bc8d13715 (patch) | |
tree | c1e9f16591f163607240ed742497ba5408cd4793 /source/blender/blenloader/intern | |
parent | 2b96175608a898f5fd00a56250551878e40ec9be (diff) |
Bugfix #20812 (and probably others)
Issue: in user preferences window, using file selecting caused the
the userpref window to be saved, and not closing.
Reason: design error (by me) in using screen->full tag for denoting
a temporarily screen (like file window). Fixed by using a new
screen->temp variable for it.
System remained unstable though, noticed another issue with freeing
temp screens in wrong places. Seems nice stable now! Will check on
the wiki for relarted issues now.
Diffstat (limited to 'source/blender/blenloader/intern')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 25 |
1 files changed, 0 insertions, 25 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 36d2be69941..131d080d2c8 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -10344,31 +10344,6 @@ static void do_versions(FileData *fd, Library *lib, Main *main) } } } - /* clear hanging 'temp' screens from older 2.5 files*/ - if (main->versionfile == 250) { - bScreen *screen, *nextscreen; - wmWindowManager *wm; - wmWindow *win, *nextwin; - - for(screen= main->screen.first; screen; screen= nextscreen) { - nextscreen= screen->id.next; - - if (screen->full == SCREENTEMP) { - /* remove corresponding windows */ - for(wm= main->wm.first; wm; wm=wm->id.next) { - for(win= wm->windows.first; win; win=nextwin) { - nextwin= win->next; - - if(newlibadr(fd, wm->id.lib, win->screen) == screen) - BLI_freelinkN(&wm->windows, win); - } - } - - /* remove screen itself */ - free_libblock(&main->screen, screen); - } - } - } } if (main->versionfile < 250 || (main->versionfile == 250 && main->subversionfile < 9)) |