diff options
author | Sven Gothel <[email protected]> | 2015-07-27 20:05:09 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2015-07-27 20:05:09 +0200 |
commit | b0af5159bc6100a6262afe6b52f9092a207ac2b3 (patch) | |
tree | 8379e6a283fd3c5028889ef9ad0e96ed77c3c3c3 /src/test/com/jogamp | |
parent | 6ae08be1742e6d805b316c0d440364854a49e68f (diff) |
Bug 1181 - JOGL WebStart Applications using GLCanvas/AWT may Deadlock by two AWT-EDT on Java >= 1.8.0_45
Root cause:
- AWT Toolkit global Lock
Our locking scheme (AWT-EDT-1):
- Surface Lock
- sun.awt.SunToolkit.awtLock()
- Component.getGraphicsConfiguration() -> synchronized(Component.getTreeLock())
Other AWT-EDT-2 by Webstart:
- synchronized(Component.getTreeLock())
- sun.awt.SunToolkit.awtLock()
Results in a deadlock.
Solution:
- Issue Component.getGraphicsConfiguration() before awtLock(),
where Component.getGraphicsConfiguration() is being used to
detect possible reconfiguration.
- Also use updated AWTGraphicsConfiguration's GraphicsConfiguration
if no 'new' detection is required.
Diffstat (limited to 'src/test/com/jogamp')
0 files changed, 0 insertions, 0 deletions