[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53917] trunk/blender/source/blender: fix own bug with uninitialized arrays in subdivide (from recent BLI_array. h update)

Campbell Barton ideasman42 at gmail.com
Sun Jan 20 09:05:27 CET 2013


Revision: 53917
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53917
Author:   campbellbarton
Date:     2013-01-20 08:05:23 +0000 (Sun, 20 Jan 2013)
Log Message:
-----------
fix own bug with uninitialized arrays in subdivide (from recent BLI_array.h update)

also quiet warning.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c
    trunk/blender/source/blender/bmesh/operators/bmo_subdivide.c

Modified: trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c	2013-01-20 00:51:52 UTC (rev 53916)
+++ trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c	2013-01-20 08:05:23 UTC (rev 53917)
@@ -2303,9 +2303,14 @@
 #endif
 	int *oldv = NULL, *olde = NULL, *oldl = NULL, *oldp = NULL;
 	BLI_array_declare(oldv); BLI_array_declare(olde); BLI_array_declare(oldl); BLI_array_declare(oldp);
-	int i, j, c, totloop, totpoly;
-	
+	int i, j, c, totpoly;
+#ifdef USE_LOOPS
+	int totloop;
+#endif
+
+#ifdef USE_LOOPS
 	totloop = dm->numLoopData;
+#endif
 	totpoly = dm->numPolyData;
 	
 	newv = MEM_mallocN(sizeof(int) * dm->numVertData, "newv vtable CDDM_merge_verts");

Modified: trunk/blender/source/blender/bmesh/operators/bmo_subdivide.c
===================================================================
--- trunk/blender/source/blender/bmesh/operators/bmo_subdivide.c	2013-01-20 00:51:52 UTC (rev 53916)
+++ trunk/blender/source/blender/bmesh/operators/bmo_subdivide.c	2013-01-20 08:05:23 UTC (rev 53917)
@@ -912,6 +912,10 @@
 			j = BLI_array_count(facedata) - 1;
 			
 			BMO_elem_flag_enable(bm, face, SUBD_SPLIT);
+
+			/* must initialize all members here */
+			facedata[j].start = NULL;
+			facedata[j].pat = NULL;
 			facedata[j].totedgesel = totesel;
 			facedata[j].face = face;
 		}




More information about the Bf-blender-cvs mailing list