[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [27202] trunk/blender/source/blender/ blenloader/intern: Bugfix #21262: Loading Alpha 0 project crash in Alpha 1

Joshua Leung aligorith at gmail.com
Mon Mar 1 07:24:00 CET 2010


Revision: 27202
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27202
Author:   aligorith
Date:     2010-03-01 07:23:59 +0100 (Mon, 01 Mar 2010)

Log Message:
-----------
Bugfix #21262: Loading Alpha 0 project crash in Alpha 1

Old temp-pointers for File Browser instances were not being cleared on file load, resulting in crashes when trying to free temp screen layouts that contained file browser instance data.

Modified Paths:
--------------
    trunk/blender/source/blender/blenloader/intern/readfile.c
    trunk/blender/source/blender/blenloader/intern/writefile.c

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2010-03-01 05:45:21 UTC (rev 27201)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2010-03-01 06:23:59 UTC (rev 27202)
@@ -5125,6 +5125,18 @@
 				//	cl->line= newdataadr(fd, cl->line);
 				
 			}
+			else if(sl->spacetype==SPACE_FILE) {
+				SpaceFile *sfile= (SpaceFile *)sl;
+				
+				/* this sort of info is probably irrelevant for reloading...
+				 * plus, it isn't saved to files yet!
+				 */
+				sfile->folders_prev= sfile->folders_next= NULL;
+				sfile->files= NULL;
+				sfile->layout= NULL;
+				sfile->op= NULL;
+				sfile->params= NULL;
+			}
 		}
 		
 		sa->actionzones.first= sa->actionzones.last= NULL;

Modified: trunk/blender/source/blender/blenloader/intern/writefile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/writefile.c	2010-03-01 05:45:21 UTC (rev 27201)
+++ trunk/blender/source/blender/blenloader/intern/writefile.c	2010-03-01 06:23:59 UTC (rev 27202)
@@ -2080,6 +2080,7 @@
 						write_curvemapping(wd, sima->cumap);
 				}
 				else if(sl->spacetype==SPACE_IMASEL) {
+					// XXX: depreceated... do we still want to keep this?
 					writestruct(wd, DATA, "SpaceImaSel", 1, sl);
 				}
 				else if(sl->spacetype==SPACE_TEXT) {





More information about the Bf-blender-cvs mailing list