From 1e5460d4c6260e523e08613b767948b68cc36b52 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Wed, 14 Apr 2021 22:42:12 +0200 Subject: [PATCH] backend/x11: check for connection errors --- backend/x11/backend.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/backend/x11/backend.c b/backend/x11/backend.c index 95325a68..4d825631 100644 --- a/backend/x11/backend.c +++ b/backend/x11/backend.c @@ -133,6 +133,9 @@ static int x11_event(int fd, uint32_t mask, void *data) { struct wlr_x11_backend *x11 = data; if ((mask & WL_EVENT_HANGUP) || (mask & WL_EVENT_ERROR)) { + if (mask & WL_EVENT_ERROR) { + wlr_log(WLR_ERROR, "Failed to read from X11 server"); + } wl_display_terminate(x11->wl_display); return 0; } @@ -143,6 +146,12 @@ static int x11_event(int fd, uint32_t mask, void *data) { free(e); } + int ret = xcb_connection_has_error(x11->xcb); + if (ret != 0) { + wlr_log(WLR_ERROR, "X11 connection error (%d)", ret); + wl_display_terminate(x11->wl_display); + } + return 0; }