Subject: bug#57364: 28.1.91; asynchronous X server error when creating a second frame on alternate DISPLAY

From: Po Lu <[email-masked]>
Date: Tue, 30 Aug 2022 09:19:21 +0800

andrés ramírez <[email-masked]> writes:

> This is the one that fixed it.
>
> commit de614ec9508d6ba34abf9db28f5d086b8710e361
> Author: Po Lu <[email-masked]>
> Date:   Wed Jan 19 17:39:04 2022 +0800
>
>   Use Cairo XCB surfaces when XCB is available
>   
>   This lets us get at goodies such as shm support, which aren't
>   available with the xlib surface.  (bug#52120)
>   
>   * configure.ac: Test for cairo-xcb if cairo is available on X.
>   * src/xterm.c (USE_CAIRO_XCB_SURFACE): New define.
>   (x_begin_cr_clip): Create XCB surfaces if available.
>   (x_try_cr_xlib_drawable):
>   (x_scroll_run): Handle XCB surfaces.
>   (x_term_init): Find XCB visualtype structure.
>   * src/xterm.h (struct x_display_info): New field `xcb_visual'.
>   * src/xwidget.c (x_draw_xwidget_glyph_string): Fix integer
>   overflow.
>
> Best Regards

Nice.  I guess the cairo XCB backend lacks the bug in the usual Xlib
one.