summaryrefslogtreecommitdiff
path: root/src/lib/elm_atspi_bridge.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/elm_atspi_bridge.c')
-rw-r--r--src/lib/elm_atspi_bridge.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index c75560103..6019cca77 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -2589,7 +2589,7 @@ _collection_match_roles_lookup(Eo *obj, struct collection_match_rule *rule)
2589 2589
2590 eo_do(obj, role = elm_interface_atspi_accessible_role_get()); 2590 eo_do(obj, role = elm_interface_atspi_accessible_role_get());
2591 2591
2592 if (role > 64) 2592 if (role >= 64)
2593 { 2593 {
2594 role -= 64; 2594 role -= 64;
2595 role_set = rule->roles[1]; 2595 role_set = rule->roles[1];
@@ -2597,6 +2597,12 @@ _collection_match_roles_lookup(Eo *obj, struct collection_match_rule *rule)
2597 else 2597 else
2598 role_set = rule->roles[0]; 2598 role_set = rule->roles[0];
2599 2599
2600 if (role >= 64)
2601 {
2602 ERR("Elm_Atspi_Role enum value exceeds 127. Unable to compare with roles bit field.");
2603 return EINA_FALSE;
2604 }
2605
2600 switch (rule->rolematchtype) 2606 switch (rule->rolematchtype)
2601 { 2607 {
2602 case ATSPI_Collection_MATCH_INVALID: 2608 case ATSPI_Collection_MATCH_INVALID: