e_comp_wl: fix invalid dangling pointer. (e_comp_wl->ptr.ec, e_comp_wl->touch.faked_ec) 00/270300/1
authorDuna Oh <duna.oh@samsung.com>
Thu, 27 Jan 2022 08:55:03 +0000 (17:55 +0900)
committerDuna Oh <duna.oh@samsung.com>
Thu, 27 Jan 2022 23:58:19 +0000 (08:58 +0900)
set e_comp_wl->ptr.ec, e_comp_wl->touch.faked_ec to NULL when ec is deleted

Change-Id: Ie45c5b3dd74836f50e9bd7e4049312972f48de40

src/bin/e_comp_wl.c

index b77c95e3f3957340b3490eb74178d4081fee6a10..a33f1c36aba4a2754bda6614abd4ccb85eb01404 100644 (file)
@@ -3685,6 +3685,12 @@ _e_comp_wl_client_cb_del(void *data EINA_UNUSED, E_Client *ec)
         cursor_timer_ec = NULL;
      }
 
+   if (e_comp_wl->ptr.ec == ec)
+     e_comp_wl->ptr.ec = NULL;
+
+   if (e_comp_wl->touch.faked_ec == ec)
+     e_comp_wl->touch.faked_ec = NULL;
+
    if (e_comp_wl->selection.cbhm == ec->comp_data->surface)
      e_comp_wl->selection.cbhm = NULL;