e_test_event: prevent removing callback that didn't added 63/190463/1
authorJunSeok, Kim <juns.kim@samsung.com>
Tue, 2 Oct 2018 08:19:08 +0000 (17:19 +0900)
committerJunSeok, Kim <juns.kim@samsung.com>
Tue, 2 Oct 2018 08:19:08 +0000 (17:19 +0900)
Change-Id: I9314ccb802352a0f8d95d56b6196b31d347f9d05

src/e_test_event.cpp

index 3d63105..30e4fdb 100644 (file)
@@ -893,10 +893,17 @@ etRunner::waitEvent(E_TC_Event_Type ev_type)
    if (sh) eldbus_signal_handler_del(sh);
    if (eh) ecore_event_handler_del(eh);
    if (eh2) ecore_event_handler_del(eh2);
-   evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_DOWN, _cb_evas_key_down);
-   evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_UP, _cb_evas_key_up);
-   evas_object_smart_callback_del(this->ev.win, effect_started, _cb_evas_smart_effect);
-   evas_object_smart_callback_del(this->ev.win, effect_done, _cb_evas_smart_effect);
+
+   if (ev_type == E_TC_EVENT_TYPE_INPUT_EVAS_KEY)
+     {
+        evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_DOWN, _cb_evas_key_down);
+        evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_UP, _cb_evas_key_up);
+     }
+   else if (ev_type == E_TC_EVENT_TYPE_EFFECT)
+     {
+        evas_object_smart_callback_del(this->ev.win, effect_started, _cb_evas_smart_effect);
+        evas_object_smart_callback_del(this->ev.win, effect_done, _cb_evas_smart_effect);
+     }
 
    res = (ev.response == ev.request);
    EINA_SAFETY_ON_FALSE_GOTO(res, finish);