#4768 Workaround locking issue in X11 getCurrentTime()
This commit is contained in:
parent
7fa92869a4
commit
f6e1dd51fa
|
@ -1432,6 +1432,7 @@ XWindowsUtil::getCurrentTime(Display* display, Window window)
|
||||||
// select property events on window
|
// select property events on window
|
||||||
XWindowAttributes attr;
|
XWindowAttributes attr;
|
||||||
XGetWindowAttributes(display, window, &attr);
|
XGetWindowAttributes(display, window, &attr);
|
||||||
|
XLockDisplay(display);
|
||||||
XSelectInput(display, window, attr.your_event_mask | PropertyChangeMask);
|
XSelectInput(display, window, attr.your_event_mask | PropertyChangeMask);
|
||||||
|
|
||||||
// make a property name to receive dummy change
|
// make a property name to receive dummy change
|
||||||
|
@ -1459,6 +1460,7 @@ XWindowsUtil::getCurrentTime(Display* display, Window window)
|
||||||
|
|
||||||
// restore event mask
|
// restore event mask
|
||||||
XSelectInput(display, window, attr.your_event_mask);
|
XSelectInput(display, window, attr.your_event_mask);
|
||||||
|
XUnlockDisplay(display);
|
||||||
|
|
||||||
return xevent.xproperty.time;
|
return xevent.xproperty.time;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue