[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [51001] trunk/blender/source/blender/ editors/space_view3d/drawobject.c: fix for mesh_foreachScreenEdge__mapFunc running the callback with V3D_CLIP_TEST_RV3D_CLIPPING 'd verts.

Campbell Barton ideasman42 at gmail.com
Tue Oct 2 06:31:52 CEST 2012


Revision: 51001
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51001
Author:   campbellbarton
Date:     2012-10-02 04:31:51 +0000 (Tue, 02 Oct 2012)
Log Message:
-----------
fix for mesh_foreachScreenEdge__mapFunc running the callback with V3D_CLIP_TEST_RV3D_CLIPPING'd verts. (used uninitialised stack memory)

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/drawobject.c

Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c	2012-10-02 03:18:48 UTC (rev 51000)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c	2012-10-02 04:31:51 UTC (rev 51001)
@@ -2162,6 +2162,10 @@
 		if (data->clipVerts == V3D_CLIP_TEST_RV3D_CLIPPING) {
 			view3d_project_short_clip(data->vc.ar, v0co, s[0], TRUE);
 			view3d_project_short_clip(data->vc.ar, v1co, s[1], TRUE);
+
+			if (s[0][0] == IS_CLIPPED || s[1][0] == IS_CLIPPED) {
+				return;
+			}
 		}
 		else {
 			float v1_co[3], v2_co[3];
@@ -2169,6 +2173,8 @@
 			mul_v3_m4v3(v1_co, data->vc.obedit->obmat, v0co);
 			mul_v3_m4v3(v2_co, data->vc.obedit->obmat, v1co);
 
+			/* XXX, todo, use ED_view3d_project_int_noclip(...), however these functions work differently
+			 * and need to be cleaned up, Campbell */
 			ED_view3d_project_short_noclip(data->vc.ar, v1_co, s[0]);
 			ED_view3d_project_short_noclip(data->vc.ar, v2_co, s[1]);
 




More information about the Bf-blender-cvs mailing list