aboutsummaryrefslogtreecommitdiff
path: root/libX11/src/PeekEvent.c
diff options
context:
space:
mode:
Diffstat (limited to 'libX11/src/PeekEvent.c')
-rw-r--r--libX11/src/PeekEvent.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libX11/src/PeekEvent.c b/libX11/src/PeekEvent.c
index 6eec4a04d..344fe02b2 100644
--- a/libX11/src/PeekEvent.c
+++ b/libX11/src/PeekEvent.c
@@ -43,10 +43,15 @@ XPeekEvent (
register Display *dpy,
register XEvent *event)
{
+ XEvent copy;
LockDisplay(dpy);
if (dpy->head == NULL)
_XReadEvents(dpy);
*event = (dpy->head)->event;
+ if (_XCopyEventCookie(dpy, &event->xcookie, &copy.xcookie)) {
+ _XStoreEventCookie(dpy, &copy);
+ *event = copy;
+ }
UnlockDisplay(dpy);
return 1;
}