[Bf-blender-cvs] [201ab7c5402] master: Fix T85823: bpy.ops.transform... ignoring 'center_override' for Bezier control points

Germano Cavalcante noreply at git.blender.org
Wed Feb 24 20:20:12 CET 2021


Commit: 201ab7c54025afc42570ce3df3d2bb7f37fe36be
Author: Germano Cavalcante
Date:   Wed Feb 24 16:19:44 2021 -0300
Branches: master
https://developer.blender.org/rB201ab7c54025afc42570ce3df3d2bb7f37fe36be

Fix T85823: bpy.ops.transform... ignoring 'center_override' for Bezier control points

`transform_around_single_fallback_ex` ignored that the center could be overwritten.

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

M	source/blender/editors/transform/transform_convert.c

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

diff --git a/source/blender/editors/transform/transform_convert.c b/source/blender/editors/transform/transform_convert.c
index 6b2e9dd9840..e2ec857b670 100644
--- a/source/blender/editors/transform/transform_convert.c
+++ b/source/blender/editors/transform/transform_convert.c
@@ -73,12 +73,20 @@ bool transform_mode_use_local_origins(const TransInfo *t)
  */
 void transform_around_single_fallback_ex(TransInfo *t, int data_len_all)
 {
-  if ((ELEM(t->around, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, V3D_AROUND_ACTIVE)) &&
-      transform_mode_use_local_origins(t)) {
-    if (data_len_all == 1) {
-      t->around = V3D_AROUND_LOCAL_ORIGINS;
-    }
+  if (data_len_all != 1) {
+    return;
   }
+  if (!ELEM(t->around, V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_CENTER_MEDIAN, V3D_AROUND_ACTIVE)) {
+    return;
+  }
+  if (!transform_mode_use_local_origins(t)) {
+    return;
+  }
+  if (t->flag | T_OVERRIDE_CENTER) {
+    return;
+  }
+
+  t->around = V3D_AROUND_LOCAL_ORIGINS;
 }
 
 void transform_around_single_fallback(TransInfo *t)



More information about the Bf-blender-cvs mailing list