[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [19875] trunk/blender/source/blender: Bugfix #18039

Ton Roosendaal ton at blender.org
Wed Apr 22 19:35:37 CEST 2009


Revision: 19875
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19875
Author:   ton
Date:     2009-04-22 19:35:37 +0200 (Wed, 22 Apr 2009)

Log Message:
-----------
Bugfix #18039

Armature modifier didn't set amd->prevCos temp variable to NULL 
after freeing. Saving this in file will cause error or crash on
reading. Quite weird how it survived so long?

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

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c	2009-04-22 17:06:47 UTC (rev 19874)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c	2009-04-22 17:35:37 UTC (rev 19875)
@@ -8846,8 +8846,10 @@
 	if(md->type == eModifierType_Armature) {
 		ArmatureModifierData *amd= (ArmatureModifierData*)md;
 
-		if(amd->prevCos)
+		if(amd->prevCos) {
 			MEM_freeN(amd->prevCos);
+			amd->prevCos= NULL;
+		}
 	}
 }
 

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2009-04-22 17:06:47 UTC (rev 19874)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2009-04-22 17:35:37 UTC (rev 19875)
@@ -3176,6 +3176,11 @@
 
 			smd->emCache = smd->mCache = 0;
 		}
+		else if (md->type==eModifierType_Armature) {
+			ArmatureModifierData *amd = (ArmatureModifierData*) md;
+			
+			amd->prevCos= NULL;
+		}
 		else if (md->type==eModifierType_Cloth) {
 			ClothModifierData *clmd = (ClothModifierData*) md;
 			





More information about the Bf-blender-cvs mailing list