Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2010-11-09 17:54:59 +0300
committerTon Roosendaal <ton@blender.org>2010-11-09 17:54:59 +0300
commit4c122988320d866b16a06ea4404d278bc8d13715 (patch)
treec1e9f16591f163607240ed742497ba5408cd4793 /source/blender/blenloader
parent2b96175608a898f5fd00a56250551878e40ec9be (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')
-rw-r--r--source/blender/blenloader/intern/readfile.c25
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))