From 1dd79c52ad51b9a68b50642dffd55e391358b2f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Tue, 23 Mar 2021 17:05:13 +0100 Subject: [PATCH] xwayland: Trap errors when setting primary RANDR output This will be crucial when we start to remove the global directly when an output is removed, as that means Xwayland might have removed the output before we managed to get our queries in. Part-of: --- src/wayland/meta-xwayland.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/wayland/meta-xwayland.c b/src/wayland/meta-xwayland.c index 10bfab90b..1a79c9434 100644 --- a/src/wayland/meta-xwayland.c +++ b/src/wayland/meta-xwayland.c @@ -49,6 +49,7 @@ #include "backends/meta-settings-private.h" #include "meta/main.h" #include "meta/meta-backend.h" +#include "meta/meta-x11-errors.h" #include "wayland/meta-xwayland-surface.h" #include "x11/meta-x11-display-private.h" @@ -1374,6 +1375,7 @@ meta_xwayland_set_primary_output (MetaX11Display *x11_display) if (!resources) return; + meta_x11_error_trap_push (x11_display); for (i = 0; i < resources->noutput; i++) { RROutput output_id = resources->outputs[i]; @@ -1407,6 +1409,7 @@ meta_xwayland_set_primary_output (MetaX11Display *x11_display) break; } } + meta_x11_error_trap_pop (x11_display); XRRFreeScreenResources (resources); }