Hello,

Please review the fix.

bug: https://jbs.oracle.com/bugs/browse/JDK-8014227
webrev: http://cr.openjdk.java.net/~ant/JDK-8014227/webrev.0

The fix changes the JLightweightFrame synchronization policy in order to resolve the deadlock which its client, jfx SwingNode, faces on Mac.

The new policy is based on introducing a duplicating pixel buffer which is then shared b/w JLF and its client. The buffer's content is synchronized with the original pixel buffer and the paintLock narrows down its scope to the copying function. This allows to avoid blocking EDT simultaneously with holding the lock (see the bug report for more details, please).

Thanks,
Anton.

Reply via email to