Hello,

please review the fix:
http://cr.openjdk.java.net/~azvegint/jdk/9/8031471/00/
for
https://bugs.openjdk.java.net/browse/JDK-8031471

This fix also fixes 7100524 [1] and 7054476 [2] as well.

This issue is related to the X error handling code: when we setting a synthetic error handler with WITH_XERROR_HANDLER() we do not wait for processing XErrorEvents for previous xlib calls which wasn't dispatched yet, so we can catch a wrong one. This fix adds a XSync() call. (like we do in the native WITH_XERROR_HANDLER macro in awt_util.h).

RESTORE_XERROR_HANDLER(boolean doXSync) was called from native previously, but it was reverted back to use native xerror
handler in 8025775 [3] and is no longer needed.


[1] https://bugs.openjdk.java.net/browse/JDK-7100524
[2] https://bugs.openjdk.java.net/browse/JDK-7054476
[3] https://bugs.openjdk.java.net/browse/JDK-8025775

--
Thanks,

Alexander.

Reply via email to