[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [37332] trunk/blender/source/blender: fix for memory leak re-binding meshes.
Campbell Barton
ideasman42 at gmail.com
Thu Jun 9 13:19:35 CEST 2011
Revision: 37332
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37332
Author: campbellbarton
Date: 2011-06-09 11:19:34 +0000 (Thu, 09 Jun 2011)
Log Message:
-----------
fix for memory leak re-binding meshes.
Modified Paths:
--------------
trunk/blender/source/blender/editors/object/object_modifier.c
trunk/blender/source/blender/modifiers/intern/MOD_meshdeform.c
Modified: trunk/blender/source/blender/editors/object/object_modifier.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_modifier.c 2011-06-09 11:09:46 UTC (rev 37331)
+++ trunk/blender/source/blender/editors/object/object_modifier.c 2011-06-09 11:19:34 UTC (rev 37332)
@@ -1259,16 +1259,22 @@
return OPERATOR_CANCELLED;
if(mmd->bindcagecos) {
- if(mmd->bindweights) MEM_freeN(mmd->bindweights);
if(mmd->bindcagecos) MEM_freeN(mmd->bindcagecos);
if(mmd->dyngrid) MEM_freeN(mmd->dyngrid);
if(mmd->dyninfluences) MEM_freeN(mmd->dyninfluences);
+ if(mmd->bindinfluences) MEM_freeN(mmd->bindinfluences);
+ if(mmd->bindoffsets) MEM_freeN(mmd->bindoffsets);
if(mmd->dynverts) MEM_freeN(mmd->dynverts);
- mmd->bindweights= NULL;
+ if(mmd->bindweights) MEM_freeN(mmd->bindweights); /* deprecated */
+ if(mmd->bindcos) MEM_freeN(mmd->bindcos); /* deprecated */
+
mmd->bindcagecos= NULL;
mmd->dyngrid= NULL;
mmd->dyninfluences= NULL;
+ mmd->bindoffsets= NULL;
mmd->dynverts= NULL;
+ mmd->bindweights= NULL; /* deprecated */
+ mmd->bindcos= NULL; /* deprecated */
mmd->totvert= 0;
mmd->totcagevert= 0;
mmd->totinfluence= 0;
Modified: trunk/blender/source/blender/modifiers/intern/MOD_meshdeform.c
===================================================================
--- trunk/blender/source/blender/modifiers/intern/MOD_meshdeform.c 2011-06-09 11:09:46 UTC (rev 37331)
+++ trunk/blender/source/blender/modifiers/intern/MOD_meshdeform.c 2011-06-09 11:19:34 UTC (rev 37332)
@@ -72,6 +72,8 @@
if(mmd->dyngrid) MEM_freeN(mmd->dyngrid);
if(mmd->dyninfluences) MEM_freeN(mmd->dyninfluences);
if(mmd->dynverts) MEM_freeN(mmd->dynverts);
+ if(mmd->bindweights) MEM_freeN(mmd->bindweights); /* deprecated */
+ if(mmd->bindcos) MEM_freeN(mmd->bindcos); /* deprecated */
}
static void copyData(ModifierData *md, ModifierData *target)
More information about the Bf-blender-cvs
mailing list