1
0
Fork 0

core: Wrap an extra X11 call with error trap

This XChangeWindowAttributes call was never surrounded by an error trap
and was not really expected to fail with BadWindow since the frame window
would be owned by Mutter itself.

This however is no longer true, and we might be getting a BadWindow from
the frame window given the right timing.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2745>
This commit is contained in:
Carlos Garnacho 2022-12-06 19:03:24 +01:00
parent c7b3d8c607
commit 2019536f3c

View file

@ -99,13 +99,15 @@ meta_window_set_frame_xwindow (MetaWindow *window,
create_serial);
meta_verbose ("Frame for %s is 0x%lx", frame->window->desc, frame->xwindow);
meta_x11_error_trap_push (x11_display);
attrs.event_mask = EVENT_MASK;
XChangeWindowAttributes (x11_display->xdisplay,
frame->xwindow, CWEventMask, &attrs);
meta_x11_display_register_x_window (x11_display, &frame->xwindow, window);
meta_x11_error_trap_push (x11_display);
if (window->mapped)
{
window->mapped = FALSE; /* the reparent will unmap the window,