Revision: 19403
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19403
Author:   theeth
Date:     2009-03-24 20:39:43 +0100 (Tue, 24 Mar 2009)

Log Message:
-----------
Bad crash in volume snapping code when duplis where involved.

Found out using Coverity's scan report.

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   2009-03-24 19:39:02 UTC 
(rev 19402)
+++ trunk/blender/source/blender/src/transform_snap.c   2009-03-24 19:39:43 UTC 
(rev 19403)
@@ -1563,11 +1563,21 @@
                                        Object *ob = dupli_ob->ob;
                                        
                                        if (ob->type == OB_MESH) {
-                                               DerivedMesh *dm;
-                                               int editmesh = 0;
+                                               DerivedMesh *dm = NULL;
                                                int val;
                                                
-                                               val = peelDerivedMesh(ob, dm, 
dupli_ob->mat, ray_start, ray_normal, mval, depth_peels);
+                                               if (ob != G.obedit)
+                                               {
+                                                       dm = 
mesh_get_derived_final(ob, CD_MASK_BAREMESH);
+                                                       
+                                                       val = 
peelDerivedMesh(ob, dm, dupli_ob->mat, ray_start, ray_normal, mval, 
depth_peels);
+                                               }
+                                               else
+                                               {
+                                                       dm = 
editmesh_get_derived_cage(CD_MASK_BAREMESH);
+                                                       
+                                                       val = 
peelDerivedMesh(ob, dm, dupli_ob->mat, ray_start, ray_normal, mval, 
depth_peels);
+                                               }
        
                                                retval = retval || val;
        


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to