diff options
author | Marius Vlad <marius.vlad@collabora.com> | 2020-06-26 15:58:54 +0300 |
---|---|---|
committer | Marius Vlad <marius.vlad@collabora.com> | 2020-06-29 22:10:11 +0300 |
commit | faea097edab0971709e847193e1bf1837ab8030c (patch) | |
tree | 2ff045f30f480574790c9bc7a1cee05b0513d9b3 | |
parent | 40da59d00a7f0e7ec48c32cb1f8ef18e5c08f471 (diff) |
shell: Avoid checking against surfaces that do not have an app_id
Not all application will set-up an app_id and we might end up
checking against those. So avoid doing that because str* kind of like
functions do not like that. Discovered when playing with cluster
receiver and sub-surfaces.
Bug-AGL: SPEC-3382
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I31b454fd3ccb1770775a00b1c953d9cbef827909
-rw-r--r-- | src/shell.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/shell.c b/src/shell.c index 82cc1d3..4886a0a 100644 --- a/src/shell.c +++ b/src/shell.c @@ -264,7 +264,7 @@ ivi_check_pending_desktop_surface_popup(struct ivi_surface *surface) const char *_app_id = weston_desktop_surface_get_app_id(surface->dsurface); - if (wl_list_empty(&ivi->popup_pending_apps)) + if (wl_list_empty(&ivi->popup_pending_apps) || !_app_id) return false; wl_list_for_each_safe(p_popup, next_p_popup, @@ -295,7 +295,7 @@ ivi_check_pending_desktop_surface_split(struct ivi_surface *surface) const char *_app_id = weston_desktop_surface_get_app_id(surface->dsurface); - if (wl_list_empty(&ivi->split_pending_apps)) + if (wl_list_empty(&ivi->split_pending_apps) || !_app_id) return false; wl_list_for_each_safe(split_surf, next_split_surf, @@ -319,7 +319,7 @@ ivi_check_pending_desktop_surface_fullscreen(struct ivi_surface *surface) const char *_app_id = weston_desktop_surface_get_app_id(surface->dsurface); - if (wl_list_empty(&ivi->fullscreen_pending_apps)) + if (wl_list_empty(&ivi->fullscreen_pending_apps) || !_app_id) return false; wl_list_for_each_safe(fs_surf, next_fs_surf, @@ -342,7 +342,7 @@ ivi_check_pending_desktop_surface_remote(struct ivi_surface *surface) const char *_app_id = weston_desktop_surface_get_app_id(surface->dsurface); - if (wl_list_empty(&ivi->remote_pending_apps)) + if (wl_list_empty(&ivi->remote_pending_apps) || !_app_id) return false; wl_list_for_each_safe(remote_surf, next_remote_surf, |