aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com/jogamp/opengl
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2020-03-27 15:06:04 +0100
committerSven Gothel <[email protected]>2020-04-06 12:57:19 +0200
commitdadf50b4768bee9b1a44851f4de69d1e6b910c68 (patch)
tree001a9fdc3af1a36c771329b3330d30f55b6b7925 /src/jogl/classes/com/jogamp/opengl
parenta63e7c70bd0041b5553abe2a9724d96a0f07c02c (diff)
Bug 1398: Avoid AWT-AppKit blocking feedback flush deadlock and SetNSViewCmd on initial makeCurrent when offscreen
makeCurrent shall skip SetNSViewCmd for offscreen, i.e. refine criteria of nsViewChanged. Previous term enforced SetNSViewCmd on initial call as lastNSViewDescr was null. Expand first term to require an actual non null NSView. contextMadeCurrent must avoid blocking to wait for completion of our SetNSViewCmd on AppKit. AWT has procedures running on AppKit under certain situations, where it issues a feedback flush on AWTEDT (from Appkit) blocking. This in turn deadlocks our SetNSViewCmd waiting on the AppKit, as we are blocking the AWTEDT waiting for same command. Further avoiding other potential deadlocks, by adding a 500ms timeout. Also clearing the lastSetNSViewCmd field post wait, regardless, which avoid repeatitive SetNSViewCmd issuance on timeout. Note that the SetNSViewCmd, we failed to wait for eventually gets executed.
Diffstat (limited to 'src/jogl/classes/com/jogamp/opengl')
0 files changed, 0 insertions, 0 deletions