xcb_request_check hangs when making a request after a flush
Minimal repro:
#include <xcb/xcb.h>
int main() {
xcb_connection_t *connection = xcb_connect(NULL, NULL);
xcb_void_cookie_t cookie = xcb_set_input_focus_checked(connection, 0, 0, 0);
xcb_flush(connection);
xcb_get_input_focus(connection);
xcb_request_check(connection, cookie);
return 0;
}
The xcb_request_check() hangs indefinitely because libxcb doesn't flush the get_input_focus request.