Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2019-01-11 14:19:42 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2019-01-11 19:26:54 +0300
commit854485b4b31c5e92049cf86fe13ed2c35486e33c (patch)
tree495cae29163d9ab0ca1a8e6bd5bb964c5c342401 /source/blender/editors/transform
parenta369004543445193ca48fd72d893914a9ea5927f (diff)
Fix T60411: crash in multi-object pose mode, with some armatures in rest pose.
Diffstat (limited to 'source/blender/editors/transform')
-rw-r--r--source/blender/editors/transform/transform_conversions.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 1dce388a275..6e4386a4171 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -1162,10 +1162,17 @@ static void createTransPose(TransInfo *t)
continue;
}
+ /* set flags and count total */
+ tc->data_len = count_set_pose_transflags(ob, t->mode, t->around, has_translate_rotate);
+ if (tc->data_len == 0) {
+ continue;
+ }
+
if (arm->flag & ARM_RESTPOS) {
if (ELEM(t->mode, TFM_DUMMY, TFM_BONESIZE) == 0) {
BKE_report(t->reports, RPT_ERROR, "Cannot change Pose when 'Rest Position' is enabled");
- return;
+ tc->data_len = 0;
+ continue;
}
}
@@ -1174,10 +1181,6 @@ static void createTransPose(TransInfo *t)
ik_on = pose_grab_with_ik(bmain, ob);
if (ik_on) t->flag |= T_AUTOIK;
}
-
- /* set flags and count total (warning, can change transform to rotate) */
- tc->data_len = count_set_pose_transflags(ob, t->mode, t->around, has_translate_rotate);
- /* len may be zero, skip next iteration. */
}
/* if there are no translatable bones, do rotation */