From bbad74406058ec2e373dbd6efe3fa2592a21d8eb Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Fri, 2 Dec 2016 09:07:47 -0500 Subject: [PATCH] verify valid client comp_data before accessing it directly ref 8173c06c4d666 Fixes T4958 Signed-off-by: Chris Michael --- src/modules/wl_desktop_shell/xdg5.c | 5 ++++- src/modules/wl_desktop_shell/xdg6.c | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/modules/wl_desktop_shell/xdg5.c b/src/modules/wl_desktop_shell/xdg5.c index 7295f16d8..6db889e72 100644 --- a/src/modules/wl_desktop_shell/xdg5.c +++ b/src/modules/wl_desktop_shell/xdg5.c @@ -881,7 +881,10 @@ _e_xdg_shell_cb_bind(struct wl_client *client, void *data EINA_UNUSED, uint32_t static void _xdg5_client_hook_del(void *d EINA_UNUSED, E_Client *ec) { - E_Shell_Data *shd = ec->comp_data->shell.data; + E_Shell_Data *shd; + + if (!ec->comp_data) return; + shd = ec->comp_data->shell.data; if (shd && (shd->version != 5)) return; if (ec->comp_data->shell.surface) diff --git a/src/modules/wl_desktop_shell/xdg6.c b/src/modules/wl_desktop_shell/xdg6.c index d98bfc905..dc4b763ce 100644 --- a/src/modules/wl_desktop_shell/xdg6.c +++ b/src/modules/wl_desktop_shell/xdg6.c @@ -1325,6 +1325,7 @@ _xdg6_client_destroy(E_Client *ec) { E_Shell_Data *shd; + if (!ec->comp_data) return; shd = ec->comp_data->shell.data; if (shd && (shd->version != 6)) return; if (ec->comp_data->shell.surface)