<AWT Dev> [9] Review Request: JDK-8024185 [macosx] Fullscreen button freezes application when started with -splash
Petr Pchelko
petr.pchelko at oracle.com
Mon Dec 16 00:36:29 PST 2013
Hello, AWT Team.
Please review the fix for the issue:
https://bugs.openjdk.java.net/browse/JDK-8024185
The fix is available at:
http://cr.openjdk.java.net/~pchelko/9/8024185/webrev/
The fix also resolves the issue:
https://bugs.openjdk.java.net/browse/JDK-8009203
The problem:
When showing the splash screen the NSApplicationAWT runAWTLoopWithApp: was invoked from within the dispatch_async.
This is a blocking method, so it blocked the main dispatch queue which is used in Cocoa internally. So we've got different bugs.
The fix replaces the Grand Central Dispatch API with the JNFRunLoop performOnMainThreadWaiting which is used in other places in splashscreen.
The test verifies that the native FS support works after showing the splashscreen. Mac OS X specific APIs are accessed with reflection, so the test is compilable on other platforms.
The test.png is an image added to the test folder, it's not in the webrev as it does not support binary file diffs. I took the image from an existing 2d open test, so it should be fine from the legal point of view.
With best regards. Petr.
More information about the awt-dev
mailing list