[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12873] trunk/blender/source/blender/src/ transform_snap.c: Correct aweful bug in transform snapping code.

Martin Poirier theeth at yahoo.com
Thu Dec 13 22:10:00 CET 2007


Revision: 12873
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12873
Author:   theeth
Date:     2007-12-13 22:10:00 +0100 (Thu, 13 Dec 2007)

Log Message:
-----------
Correct aweful bug in transform snapping code. How that even work is beyond magic!

Reported by some (crash) and pin pointed by Briggs, thanks a lot!

This should fix the apparently completely random crashes.

Modified Paths:
--------------
    trunk/blender/source/blender/src/transform_snap.c

Modified: trunk/blender/source/blender/src/transform_snap.c
===================================================================
--- trunk/blender/source/blender/src/transform_snap.c	2007-12-13 16:15:43 UTC (rev 12872)
+++ trunk/blender/source/blender/src/transform_snap.c	2007-12-13 21:10:00 UTC (rev 12873)
@@ -471,12 +471,13 @@
 	if ((t->tsnap.status & TARGET_INIT) == 0)
 	{
 		TransData *td = NULL;
+		int i;
 
 		t->tsnap.snapTarget[0] = 0;
 		t->tsnap.snapTarget[1] = 0;
 		t->tsnap.snapTarget[2] = 0;
 		
-		for (td = t->data; td != NULL && td->flag & TD_SELECTED ; td++)
+		for(td = t->data, i = 0 ; i < t->total && td->flag & TD_SELECTED ; i++, td++)
 		{
 			VecAddf(t->tsnap.snapTarget, t->tsnap.snapTarget, td->iloc);
 		}
@@ -514,7 +515,8 @@
 		// More than one selected item
 		else
 			{
-			for (td = t->data; td != NULL && td->flag & TD_SELECTED ; td++)
+			int i;
+			for(td = t->data, i = 0 ; i < t->total && td->flag & TD_SELECTED ; i++, td++)
 			{
 				float loc[3];
 				float dist;





More information about the Bf-blender-cvs mailing list