Hi, Anton,
the changes look fine. You can also consider using GetBooleanAction
instead of GetPropertyAction to get "jlf.copyBufferEnabled" value.
Thanks,
Artem
On 5/8/2013 6:54 PM, Anton V. Tarasov wrote:
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.