mirror of
https://github.com/Raymo111/i3lock-color.git
synced 2024-11-11 13:50:52 -05:00
Flush xcb connection after opening fullscreen window (#74)
We need to ensure that the window handle is valid, i. e. the window is actually created and accessible, before returning. This is necessary because we immediately fork after returning, and the child process opens its own X11 connection and expects the window handle to be valid. Fixes #46
This commit is contained in:
parent
9a7604bb35
commit
402254b575
1 changed files with 4 additions and 0 deletions
4
xcb.c
4
xcb.c
|
@ -10,6 +10,7 @@
|
|||
#include <xcb/xcb.h>
|
||||
#include <xcb/xcb_image.h>
|
||||
#include <xcb/xcb_atom.h>
|
||||
#include <xcb/xcb_aux.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdbool.h>
|
||||
|
@ -150,6 +151,9 @@ xcb_window_t open_fullscreen_window(xcb_connection_t *conn, xcb_screen_t *scr, c
|
|||
values[0] = XCB_STACK_MODE_ABOVE;
|
||||
xcb_configure_window(conn, win, XCB_CONFIG_WINDOW_STACK_MODE, values);
|
||||
|
||||
/* Ensure that the window is created and set up before returning */
|
||||
xcb_aux_sync(conn);
|
||||
|
||||
return win;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue