[Bf-blender-cvs] [d93a7290e50] master: View3D Snap: Don't mix original/evaluated in the same function parameters.

mano-wii noreply at git.blender.org
Tue Jun 11 23:47:10 CEST 2019


Commit: d93a7290e5063be31c7c6af9f0496182658f42d2
Author: mano-wii
Date:   Tue Jun 11 18:45:46 2019 -0300
Branches: master
https://developer.blender.org/rBd93a7290e5063be31c7c6af9f0496182658f42d2

View3D Snap: Don't mix original/evaluated in the same function parameters.

===================================================================

M	source/blender/editors/space_view3d/view3d_snap.c

===================================================================

diff --git a/source/blender/editors/space_view3d/view3d_snap.c b/source/blender/editors/space_view3d/view3d_snap.c
index 8b1d2028107..51dc14f3dff 100644
--- a/source/blender/editors/space_view3d/view3d_snap.c
+++ b/source/blender/editors/space_view3d/view3d_snap.c
@@ -428,13 +428,14 @@ static int snap_selected_to_location(bContext *C,
         sub_v3_v3(cursor_parent, ob->obmat[3]);
 
         if (ob->parent) {
-          float parentmat[4][4];
-          /* The evaluated object is used here because sometimes
-           * `runtime.curve_cache` is required. */
-          Object *ob_parent_eval = DEG_get_evaluated_object(depsgraph, ob->parent);
-          BKE_object_get_parent_matrix(ob, ob_parent_eval, parentmat);
-          mul_m3_m4m4(imat, parentmat, ob->parentinv);
-          invert_m3(imat);
+          float originmat[3][3], parentmat[4][4];
+          /* Use the evaluated object here because sometimes
+           * `ob->parent->runtime.curve_cache` is required. */
+          Object *ob_eval = DEG_get_evaluated_object(depsgraph, ob);
+
+          BKE_object_get_parent_matrix(ob_eval, ob_eval->parent, parentmat);
+          mul_m3_m4m4(originmat, parentmat, ob->parentinv);
+          invert_m3_m3(imat, originmat);
           mul_m3_v3(imat, cursor_parent);
         }
         if ((ob->protectflag & OB_LOCK_LOCX) == 0) {



More information about the Bf-blender-cvs mailing list