desktop: Send remove event only if output and app_id is set 54/26154/1
authorMarius Vlad <marius.vlad@collabora.com>
Wed, 10 Mar 2021 18:03:07 +0000 (20:03 +0200)
committerMarius Vlad <marius.vlad@collabora.com>
Wed, 10 Mar 2021 23:00:10 +0000 (01:00 +0200)
This will guard against clients do not have an application id, or they
weren't activated at all.

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Iee58c0f54efdecce82ff07e0916ebef15f7f64d8

src/desktop.c

index f32097e..9a5ca54 100644 (file)
@@ -243,8 +243,9 @@ skip_output_asignment:
        weston_log("Removed surface %p, app_id %s, role %s\n", surface,
                        app_id, ivi_layout_get_surface_role_name(surface));
 
-       shell_advertise_app_state(output->ivi, app_id,
-                                 NULL, AGL_SHELL_DESKTOP_APP_STATE_DESTROYED);
+       if (app_id && output)
+               shell_advertise_app_state(output->ivi, app_id,
+                                         NULL, AGL_SHELL_DESKTOP_APP_STATE_DESTROYED);
 
        wl_list_remove(&surface->link);