diff --git a/gdk/wayland/gdkpopup-wayland.c b/gdk/wayland/gdkpopup-wayland.c index 652cac8ef7..125e70e638 100644 --- a/gdk/wayland/gdkpopup-wayland.c +++ b/gdk/wayland/gdkpopup-wayland.c @@ -1388,7 +1388,15 @@ gdk_wayland_surface_present_popup (GdkWaylandPopup *wayland_popup, } while (wayland_popup->display_server.xdg_popup && !is_relayout_finished (surface)) - wl_display_dispatch_queue (display_wayland->wl_display, wayland_surface->event_queue); + { + if (wl_display_dispatch_queue (display_wayland->wl_display, + wayland_surface->event_queue) == -1) + { + g_message ("Error %d (%s) dispatching to Wayland display.", + errno, g_strerror (errno)); + _exit (1); + } + } if (wayland_popup->display_server.xdg_popup) { diff --git a/gdk/wayland/gdktoplevel-wayland.c b/gdk/wayland/gdktoplevel-wayland.c index bdaca587f9..7a74967c8d 100644 --- a/gdk/wayland/gdktoplevel-wayland.c +++ b/gdk/wayland/gdktoplevel-wayland.c @@ -2119,7 +2119,15 @@ gdk_wayland_toplevel_focus (GdkToplevel *toplevel, xdg_activation_token_v1_commit (token); while (startup_id == NULL) - wl_display_dispatch_queue (display_wayland->wl_display, event_queue); + { + if (wl_display_dispatch_queue (display_wayland->wl_display, + event_queue) == -1) + { + g_message ("Error %d (%s) dispatching to Wayland display.", + errno, g_strerror (errno)); + _exit (1); + } + } xdg_activation_token_v1_destroy (token); wl_event_queue_destroy (event_queue);