Add missing call to _is_operation_permitted in _accessible_gesture_do atspi call 74/206374/5
authorYoungGun Chun <jykeon@samsung.com>
Fri, 17 May 2019 06:18:41 +0000 (15:18 +0900)
committerLukasz Oleksak <l.oleksak@samsung.com>
Mon, 20 May 2019 07:41:30 +0000 (07:41 +0000)
Change-Id: Ic7755741c384599ba4623a286a1a99f2203385cd

src/lib/elementary/elm_atspi_bridge.c

index 622eeb2..6b76a54 100644 (file)
@@ -962,6 +962,8 @@ fail:
 }
 
 //TIZEN_ONLY(20170405) Add gesture method to accessible interface
+static Eina_Bool _is_operation_permitted(Eo *obj);
+
 static Eldbus_Message *
 _accessible_gesture_do(const Eldbus_Service_Interface *iface, const Eldbus_Message *msg)
 {
@@ -972,25 +974,26 @@ _accessible_gesture_do(const Eldbus_Service_Interface *iface, const Eldbus_Messa
    unsigned int event_time;
    Eldbus_Message *ret;
    Eina_Bool result = EINA_FALSE;
-
-   if (!eldbus_message_arguments_get(msg, "iiiiiiu", &type, &x_beg, &y_beg,
+   if (_is_operation_permitted(obj))
+     {
+         if (!eldbus_message_arguments_get(msg, "iiiiiiu", &type, &x_beg, &y_beg,
                                      &x_end, &y_end, &state, &event_time))
-     return eldbus_message_error_new(msg, "org.freedesktop.DBus.Error.InvalidArgs", "Invalid index type.");
-
-   ret = eldbus_message_method_return_new(msg);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL);
-
-   Efl_Access_Gesture_Info gesture_info;
-   gesture_info.type = (Efl_Access_Gesture)type;
-   gesture_info.x_beg = x_beg;
-   gesture_info.y_beg = y_beg;
-   gesture_info.x_end = x_end;
-   gesture_info.y_end = y_end;
-   gesture_info.state = (Efl_Access_Gesture_State)state;
-   gesture_info.event_time = event_time;
-   result = efl_access_object_gesture_do(obj, gesture_info);
-   eldbus_message_arguments_append(ret, "b", result);
-
+          return eldbus_message_error_new(msg, "org.freedesktop.DBus.Error.InvalidArgs", "Invalid index type.");
+
+          ret = eldbus_message_method_return_new(msg);
+          EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL);
+
+          Efl_Access_Gesture_Info gesture_info;
+          gesture_info.type = (Efl_Access_Gesture)type;
+          gesture_info.x_beg = x_beg;
+          gesture_info.y_beg = y_beg;
+          gesture_info.x_end = x_end;
+          gesture_info.y_end = y_end;
+          gesture_info.state = (Efl_Access_Gesture_State)state;
+          gesture_info.event_time = event_time;
+          result = efl_access_object_gesture_do(obj, gesture_info);
+          eldbus_message_arguments_append(ret, "b", result);
+      }
    return ret;
 }
 //