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:
authorCampbell Barton <ideasman42@gmail.com>2019-01-24 15:06:29 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-01-24 15:25:18 +0300
commit7b35ef23a0468525b17ee45cb474847a431c2f58 (patch)
treed1381a725f61faa65317cc54e663f0c70d1a6b99 /source/blender/editors/space_view3d/view3d_view.c
parent4162b83590a7e14626e3741ec185fb40815fb1a3 (diff)
Fix T60807: Can't select when active pose object is hidden
Object mode locking wasn't accounting for the 3D view context which doesn't have an active object once its hidden.
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_view.c')
-rw-r--r--source/blender/editors/space_view3d/view3d_view.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/editors/space_view3d/view3d_view.c b/source/blender/editors/space_view3d/view3d_view.c
index 9abc0d4f553..1ebf344a46d 100644
--- a/source/blender/editors/space_view3d/view3d_view.c
+++ b/source/blender/editors/space_view3d/view3d_view.c
@@ -984,6 +984,8 @@ int view3d_opengl_select(
}
}
+ /* Important to use 'vc->obact', not 'OBACT(vc->view_layer)' below,
+ * so it will be NULL when hidden. */
struct {
DRW_ObjectFilterFn fn;
void *user_data;
@@ -991,7 +993,7 @@ int view3d_opengl_select(
switch (select_filter) {
case VIEW3D_SELECT_FILTER_OBJECT_MODE_LOCK:
{
- Object *obact = OBACT(vc->view_layer);
+ Object *obact = vc->obact;
if (obact && obact->mode != OB_MODE_OBJECT) {
object_filter.fn = drw_select_filter_object_mode_lock;
object_filter.user_data = obact;
@@ -1000,7 +1002,7 @@ int view3d_opengl_select(
}
case VIEW3D_SELECT_FILTER_WPAINT_POSE_MODE_LOCK:
{
- Object *obact = OBACT(vc->view_layer);
+ Object *obact = vc->obact;
BLI_assert(obact && (obact->mode & OB_MODE_WEIGHT_PAINT));
Object *ob_pose = BKE_object_pose_armature_get(obact);