wayland: Handle dispatch failing in a couple of more places

Without doing this, we'll end up with risking GTK processes sitting
eating 100% CPU instead of just exit(1):ing.
This commit is contained in:
Jonas Ådahl 2023-02-11 11:42:21 +01:00
parent 2365d9be18
commit a7fb9a6865
2 changed files with 18 additions and 2 deletions

View File

@ -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)
{

View File

@ -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);