[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33971] trunk/blender/source/blender/ blenloader/intern/readfile.c: Bugfix #25427
Ton Roosendaal
ton at blender.org
Fri Dec 31 13:37:30 CET 2010
Revision: 33971
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33971
Author: ton
Date: 2010-12-31 13:37:30 +0100 (Fri, 31 Dec 2010)
Log Message:
-----------
Bugfix #25427
Serious *bad* crash in undo introduced by commit Janne dec 21st.
Time window now stores some kind of cache for fluids/cloth, but
it's pointing (in SpaceTime) to data inside Objects. (Not ID).
That's really not allowed... this commit fixes crashes but the
cache code really needs to be redesigned. I'm also afraid this
crash is going to frustrate everyone using physics...
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2010-12-31 11:55:11 UTC (rev 33970)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2010-12-31 12:37:30 UTC (rev 33971)
@@ -4984,6 +4984,15 @@
ssound->sound= restore_pointer_by_name(newmain, (ID *)ssound->sound, 1);
}
+ else if(sl->spacetype==SPACE_TIME) {
+ SpaceTime *stime= (SpaceTime *)sl;
+ SpaceTimeCache *stc;
+
+ /* XXX bad linking of internal object data to space */
+ for (stc= stime->caches.first; stc; stc=stc->next)
+ MEM_freeN(stc->array);
+ BLI_freelistN(&stime->caches);
+ }
else if(sl->spacetype==SPACE_NODE) {
SpaceNode *snode= (SpaceNode *)sl;
More information about the Bf-blender-cvs
mailing list