[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45834] trunk/blender/source/blender: - fix memory leak in mesh_strip_loose_polysloops(), occurred during 3ds import.
Campbell Barton
ideasman42 at gmail.com
Sun Apr 22 02:27:38 CEST 2012
Revision: 45834
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45834
Author: campbellbarton
Date: 2012-04-22 00:27:38 +0000 (Sun, 22 Apr 2012)
Log Message:
-----------
- fix memory leak in mesh_strip_loose_polysloops(), occurred during 3ds import.
- updating normals in py/api's mesh.transform() wasn't working and gave annoying print, disable this, script authors can call calc_normals explicitly if they need.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/mesh.c
trunk/blender/source/blender/editors/mesh/mesh_data.c
Modified: trunk/blender/source/blender/blenkernel/intern/mesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/mesh.c 2012-04-22 00:20:58 UTC (rev 45833)
+++ trunk/blender/source/blender/blenkernel/intern/mesh.c 2012-04-22 00:27:38 UTC (rev 45834)
@@ -1058,7 +1058,7 @@
MLoop *l;
int a, b;
/* New loops idx! */
- int *new_idx = MEM_mallocN(sizeof(int) * me->totloop, "strip_loose_polysloops old2new idx mapping for polys.");
+ int *new_idx = MEM_mallocN(sizeof(int) * me->totloop, __func__);
for (a = b = 0, p = me->mpoly; a < me->totpoly; a++, p++) {
int invalid = FALSE;
@@ -1119,6 +1119,8 @@
for (a = 0, p = me->mpoly; a < me->totpoly; a++, p++) {
p->loopstart = new_idx[p->loopstart];
}
+
+ MEM_freeN(new_idx);
}
void mesh_strip_loose_edges(Mesh *me)
Modified: trunk/blender/source/blender/editors/mesh/mesh_data.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/mesh_data.c 2012-04-22 00:20:58 UTC (rev 45833)
+++ trunk/blender/source/blender/editors/mesh/mesh_data.c 2012-04-22 00:27:38 UTC (rev 45834)
@@ -896,7 +896,7 @@
for (i = 0; i < me->totvert; i++, mvert++)
mul_m4_v3((float (*)[4])mat, mvert->co);
- mesh_calc_normals_mapping(me->mvert, me->totvert, me->mloop, me->mpoly, me->totloop, me->totpoly, NULL, NULL, 0, NULL, NULL);
+ /* don't update normals, caller can do this explicitly */
}
static void mesh_add_edges(Mesh *mesh, int len)
More information about the Bf-blender-cvs
mailing list