[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13140] trunk/blender/source/blender: Used valgrind to find some uninitialized variables

Campbell Barton ideasman42 at gmail.com
Sat Jan 5 20:11:10 CET 2008


Revision: 13140
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13140
Author:   campbellbarton
Date:     2008-01-05 20:11:10 +0100 (Sat, 05 Jan 2008)

Log Message:
-----------
Used valgrind to find some uninitialized variables

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/curve.c
    trunk/blender/source/blender/blenkernel/intern/object.c
    trunk/blender/source/blender/src/drawview.c
    trunk/blender/source/blender/src/editview.c
    trunk/blender/source/blender/src/outliner.c
    trunk/blender/source/blender/src/vpaint.c

Modified: trunk/blender/source/blender/blenkernel/intern/curve.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/curve.c	2008-01-05 13:56:40 UTC (rev 13139)
+++ trunk/blender/source/blender/blenkernel/intern/curve.c	2008-01-05 19:11:10 UTC (rev 13140)
@@ -586,7 +586,7 @@
 
 	/* this is for float inaccuracy */
 	if(t < knots[0]) t= knots[0];
-	else if(t > knots[opp2]) t= knots[opp2];
+	else if(t > knots[opp2]) t= knots[opp2]; /* Valgrind reports an error here, use a nurbs torus and change u/v res to reproduce a crash TODO*/
 
 	/* this part is order '1' */
         o2 = order + 1;

Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/object.c	2008-01-05 13:56:40 UTC (rev 13139)
+++ trunk/blender/source/blender/blenkernel/intern/object.c	2008-01-05 19:11:10 UTC (rev 13140)
@@ -2003,7 +2003,7 @@
 	BoundBox *bb;
 	float min[3] = {-1,-1,-1}, max[3] = {-1,-1,-1};
 
-	bb= MEM_mallocN(sizeof(BoundBox), "bb");
+	bb= MEM_callocN(sizeof(BoundBox), "bb");
 	boundbox_set_from_min_max(bb, min, max);
 	
 	return bb;

Modified: trunk/blender/source/blender/src/drawview.c
===================================================================
--- trunk/blender/source/blender/src/drawview.c	2008-01-05 13:56:40 UTC (rev 13139)
+++ trunk/blender/source/blender/src/drawview.c	2008-01-05 19:11:10 UTC (rev 13140)
@@ -3526,7 +3526,7 @@
 	ScrArea *sa, *oldsa;
 	int cfraont;
 	unsigned short event=0;
-	short val;
+	short val = 0; /* its possible qtest() wont run and val must be initialized */
 
 	/* patch for very very old scenes */
 	if(SFRA==0) SFRA= 1;

Modified: trunk/blender/source/blender/src/editview.c
===================================================================
--- trunk/blender/source/blender/src/editview.c	2008-01-05 13:56:40 UTC (rev 13139)
+++ trunk/blender/source/blender/src/editview.c	2008-01-05 19:11:10 UTC (rev 13140)
@@ -2730,7 +2730,7 @@
 		if(val==0) return;
 		
 		v3d->flag |= V3D_CLIPPING;
-		v3d->clipbb= MEM_mallocN(sizeof(BoundBox), "clipbb");
+		v3d->clipbb= MEM_callocN(sizeof(BoundBox), "clipbb");
 		
 		/* convert border to 3d coordinates */
 		

Modified: trunk/blender/source/blender/src/outliner.c
===================================================================
--- trunk/blender/source/blender/src/outliner.c	2008-01-05 13:56:40 UTC (rev 13139)
+++ trunk/blender/source/blender/src/outliner.c	2008-01-05 19:11:10 UTC (rev 13140)
@@ -229,6 +229,7 @@
 	if(type) tselem->nr= nr; // we're picky! :)
 	else tselem->nr= 0;
 	tselem->id= id;
+	tselem->used = 0;
 	tselem->flag= TSE_CLOSED;
 	te->store_index= ts->usedelem;
 	

Modified: trunk/blender/source/blender/src/vpaint.c
===================================================================
--- trunk/blender/source/blender/src/vpaint.c	2008-01-05 13:56:40 UTC (rev 13139)
+++ trunk/blender/source/blender/src/vpaint.c	2008-01-05 19:11:10 UTC (rev 13140)
@@ -746,7 +746,7 @@
 	struct ImBuf *ibuf;
 	int x1, y1, x2, y2, a, tot=0, index;
 	
-	if(totface>=MAXINDEX) return 0;
+	if(totface+4>=MAXINDEX) return 0;
 	
 	if(size>64.0) size= 64.0;
 	
@@ -776,7 +776,7 @@
 	size= (y2-y1)*(x2-x1);
 	if(size<=0) return 0;
 
-	memset(indexar, 0, sizeof(int)*totface+2);	/* plus 2! first element is total */
+	memset(indexar, 0, sizeof(int)*totface+4);	/* plus 2! first element is total, +2 was giving valgrind errors, +4 seems ok */
 	
 	while(size--) {
 			





More information about the Bf-blender-cvs mailing list