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:
authorDalai Felinto <dalai@blender.org>2020-03-11 17:30:24 +0300
committerDalai Felinto <dalai@blender.org>2020-03-11 17:32:21 +0300
commitb198cef89fa4a173580e8745dee051f37d1927c8 (patch)
tree3bc06e4fab6c6ab336b43543f4057a23b2b8474c /source/blender/editors/armature/armature_select.c
parentb9f6d033beecd75398be14419d37d8aab0609812 (diff)
Fix T74516: Armature Crash on Select Similar Group
Select Similar Group and Select Similar Shape had this issue since they were added. Basically it assumes there is pose data which in some cases it does not.
Diffstat (limited to 'source/blender/editors/armature/armature_select.c')
-rw-r--r--source/blender/editors/armature/armature_select.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/editors/armature/armature_select.c b/source/blender/editors/armature/armature_select.c
index 0f288c0d8b8..47eb09cdf3d 100644
--- a/source/blender/editors/armature/armature_select.c
+++ b/source/blender/editors/armature/armature_select.c
@@ -1461,6 +1461,13 @@ static void select_similar_data_pchan(bContext *C, const size_t bytes_size, cons
EditBone *ebone_act = CTX_data_active_bone(C);
const bPoseChannel *pchan_active = BKE_pose_channel_find_name(obedit->pose, ebone_act->name);
+
+ /* This will mostly happen for corner cases where the user tried to access this
+ * before having any valid pose data for the armature. */
+ if (pchan_active == NULL) {
+ return;
+ }
+
const char *data_active = (const char *)POINTER_OFFSET(pchan_active, offset);
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
if (EBONE_SELECTABLE(arm, ebone)) {