mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2025-12-22 11:30:06 +01:00
Grab server while creating window tree and window properties.
This commit is contained in:
parent
61483024d0
commit
e77fb301e1
1 changed files with 8 additions and 2 deletions
|
|
@ -2013,8 +2013,16 @@ dmxAttachScreen (int idx,
|
||||||
FindAllClientResources(clients[i], dmxBECreateResources,
|
FindAllClientResources(clients[i], dmxBECreateResources,
|
||||||
(pointer)idx);
|
(pointer)idx);
|
||||||
|
|
||||||
|
/* Grab back-end server while creating window tree and window
|
||||||
|
properties to prevent race conditions in back-end server
|
||||||
|
clients */
|
||||||
|
XGrabServer (dmxScreen->beDisplay);
|
||||||
|
|
||||||
/* Create window hierarchy (top down) */
|
/* Create window hierarchy (top down) */
|
||||||
dmxBECreateWindowTree(idx);
|
dmxBECreateWindowTree(idx);
|
||||||
|
dmxBECreateWindowProperties(idx);
|
||||||
|
|
||||||
|
XUngrabServer (dmxScreen->beDisplay);
|
||||||
|
|
||||||
#ifdef RENDER
|
#ifdef RENDER
|
||||||
/* Restore the picture state for RENDER */
|
/* Restore the picture state for RENDER */
|
||||||
|
|
@ -2030,8 +2038,6 @@ dmxAttachScreen (int idx,
|
||||||
dmxBERestoreRenderGlyph,(pointer)idx);
|
dmxBERestoreRenderGlyph,(pointer)idx);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
dmxBECreateWindowProperties(idx);
|
|
||||||
|
|
||||||
/* Refresh screen by generating exposure events for all windows */
|
/* Refresh screen by generating exposure events for all windows */
|
||||||
dmxForceExposures(idx);
|
dmxForceExposures(idx);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue