Hello,

Could you please review the following fix for the bug.

Bug: https://bugs.openjdk.java.net/browse/JDK-8139581
Webrev: http://cr.openjdk.java.net/~alitvinov/8139581/jdk9/webrev.00

The bug consists in the fact that sometimes X11 "Expose" events arriving in Toolkit thread during execution of "XBaseWindow.init(XCreateWindowParams)" method in another thread are not handled in the method "XBaseWindow.dispatchToWindow(XEvent)", because "XBaseWindow.initialising" field equals "NOT_INITIALISED" and "XBaseWindow.checkInitialised()" returns "false". A result of such not handled "Expose" events is not drawn AWT component, which is inserted back to AWT container, and whose "java.awt.Component.paint(Graphics)" method is not called.

The fix removes "InitialiseState.NOT_INITIALISED" from the code and this lets the mechanism of waiting for "INITIALISED" state work as designed in the method "XBaseWindow.checkInitialised".

Thank you,
Anton

Reply via email to