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:
authorBastien Montagne <montagne29@wanadoo.fr>2015-08-13 15:25:26 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2015-08-13 15:25:26 +0300
commitd2383ec6c07a298a290b83ba8347618e3b46c9d9 (patch)
treef2e57e18d6e95077dad0d219a001d434c02ebb8b /source/blender/editors/object/object_select.c
parent828710d2aca3c7595789d9892e092593e9d64e66 (diff)
Fix T45783: Problem selecting all objects on a layer from a script if any 3d view is in local mode.
Do not take into account lay bits used for local view, when doing exact match.
Diffstat (limited to 'source/blender/editors/object/object_select.c')
-rw-r--r--source/blender/editors/object/object_select.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/editors/object/object_select.c b/source/blender/editors/object/object_select.c
index 6e00875a3ae..a8e4eec640b 100644
--- a/source/blender/editors/object/object_select.c
+++ b/source/blender/editors/object/object_select.c
@@ -958,7 +958,8 @@ static int object_select_by_layer_exec(bContext *C, wmOperator *op)
switch (match) {
case OB_SEL_LAYERMATCH_EXACT:
- ok = (base->lay == (1 << (layernum - 1)));
+ /* Mask out bits used for local view, only work on real layer ones, see T45783. */
+ ok = ((base->lay & ((1 << 20) - 1)) == (1 << (layernum - 1)));
break;
case OB_SEL_LAYERMATCH_SHARED:
ok = (base->lay & (1 << (layernum - 1))) != 0;