From 471df467ec27e3d6a0b5d2739e3beaf3a8452020 Mon Sep 17 00:00:00 2001 From: "duna.oh" Date: Fri, 26 Aug 2022 15:41:41 +0900 Subject: [PATCH] e_devicemgr: modify the order of DEVICE_DEL event handler e_devicemgr and e_comp_screen, both handles the DEVICE_DEL event. When e_devicemgr's handler is called, it removes the device from the device list and set last_device_ptr NULL. Since e_comp_screen is called afterward, the device is already removed. This patch reorders the event handler. Change-Id: I479657db2600a6fd490cc6c7ff386914990baf49 --- src/bin/e_comp_screen.c | 2 +- src/bin/e_devicemgr_input.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/e_comp_screen.c b/src/bin/e_comp_screen.c index cff04e2..8607475 100644 --- a/src/bin/e_comp_screen.c +++ b/src/bin/e_comp_screen.c @@ -1292,7 +1292,7 @@ e_comp_screen_init() tzsr_client_hook_del = e_client_hook_add(E_CLIENT_HOOK_DEL, _tz_screen_rotation_cb_client_del, NULL); E_LIST_HANDLER_APPEND(event_handlers, ECORE_EVENT_DEVICE_ADD, _e_comp_screen_cb_input_device_add, comp); - E_LIST_HANDLER_APPEND(event_handlers, ECORE_EVENT_DEVICE_DEL, _e_comp_screen_cb_input_device_del, comp); + E_LIST_HANDLER_PREPEND(event_handlers, ECORE_EVENT_DEVICE_DEL, _e_comp_screen_cb_input_device_del, comp); E_OUTPUT_HOOK_APPEND(output_hooks, E_OUTPUT_HOOK_CONNECT_STATUS_CHANGE, _e_comp_screen_cb_output_connect_status_change, comp); E_OUTPUT_HOOK_APPEND(output_hooks, E_OUTPUT_HOOK_MODE_CHANGE, _e_comp_screen_cb_output_mode_change, comp); diff --git a/src/bin/e_devicemgr_input.c b/src/bin/e_devicemgr_input.c index ccc0c8a..316f243 100644 --- a/src/bin/e_devicemgr_input.c +++ b/src/bin/e_devicemgr_input.c @@ -453,7 +453,7 @@ e_devicemgr_input_init(void) E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_MOUSE_BUTTON_UP, _e_devicemgr_input_cb_mouse_button_up, NULL); E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_MOUSE_WHEEL, _e_devicemgr_input_cb_mouse_wheel, NULL); E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_ADD, _e_devicemgr_input_cb_device_add, NULL); - E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_DEL, _e_devicemgr_input_cb_device_del, NULL); + E_LIST_HANDLER_APPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_DEL, _e_devicemgr_input_cb_device_del, NULL); E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_SUBCLASS_UPDATE, _e_devicemgr_input_cb_device_update, NULL); if (e_devicemgr->dconfig->conf->input.virtual_key_device_enable) -- 2.7.4