Hi Michael, Thanks for the link, I missed that when I went to explore JBS. I'll report the issue there.
All best, Steven On Thu, Jul 30, 2020 at 3:25 AM Michael Paus <m...@jugs.org> wrote: > Hi Steven, > the right place for bug reports like this is here: > <https://bugs.java.com/bugdatabase/> > Michael > > Am 30.07.20 um 01:28 schrieb Steven Yi: > > Hi All, > > > > I'm not sure if this is the place to report this, but hopefully so. (I > did > > not see a way to create an account or report issues on JBS.) > > > > I am using JavaFX embedded within a Swing application and had found > > intermittent deadlocks on macOS that I wasn't sure why it was happening. > I > > was finally able to create a minimal working example and have published > it > > here: > > > > https://github.com/kunstmusik/ContextMenuHangingTest > > > > The switching applications seems to be a key to getting the deadlock to > > happen. Testing with debugger in Netbeans, when the app freezes, I paused > > the app and saw this in the Java FX Application Thread stack: > > > > "JavaFX Application Thread" > > at sun.lwawt.macosx.LWCToolkit.doAWTRunLoopImpl(LWCToolkit.java) > > at sun.lwawt.macosx.LWCToolkit.doAWTRunLoop(LWCToolkit.java:913) > > at sun.lwawt.macosx.LWCToolkit.invokeAndWait(LWCToolkit.java:694) > > at sun.lwawt.macosx.LWCToolkit.invokeAndWait(LWCToolkit.java:639) > > at sun.lwawt.macosx.CAccessibility.invokeAndWait(CAccessibility.java:94) > > at sun.lwawt.macosx.CAccessibility.getFocusOwner(CAccessibility.java:548) > > at com.sun.glass.ui.mac.MacWindow._setView(MacWindow.java) > > at com.sun.glass.ui.Window.setView(Window.java:416) > > at > > > com.sun.javafx.tk.quantum.WindowStage.lambda$setScene$0(WindowStage.java:287) > > at com.sun.javafx.tk.quantum.WindowStage$$Lambda$359.792704517.get > > at > > > com.sun.javafx.tk.quantum.QuantumToolkit.runWithRenderLock(QuantumToolkit.java:430) > > at com.sun.javafx.tk.quantum.WindowStage.setScene(WindowStage.java:286) > > at javafx.stage.Window$12.invalidated(Window.java:1085) > > at > > > javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:110) > > at > > > javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:145) > > at javafx.stage.Window.setShowing(Window.java:1174) > > at javafx.stage.Window.show(Window.java:1189) > > at javafx.stage.PopupWindow.showImpl(PopupWindow.java:472) > > at javafx.stage.PopupWindow.show(PopupWindow.java:417) > > at javafx.scene.control.ContextMenu.doShow(ContextMenu.java:323) > > at javafx.scene.control.ContextMenu.show(ContextMenu.java:265) > > at > > > com.kunstmusik.contextmenuhangingtest.HangingTest.lambda$main$0(HangingTest.java:29) > > at > > > com.kunstmusik.contextmenuhangingtest.HangingTest$$Lambda$191.1699780362.handle > > at > > > com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86) > > at > > > com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:234) > > at > > > com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) > > at > > > com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) > > at > > > com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) > > at > > > com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) > > at > > > com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) > > at > > > com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) > > at > > > com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) > > at > > > com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) > > at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) > > at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49) > > at javafx.event.Event.fireEvent(Event.java:198) > > at javafx.scene.Node.fireEvent(Node.java:8885) > > at javafx.scene.control.Button.fire(Button.java:203) > > at > > > com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(ButtonBehavior.java:206) > > at > > > com.sun.javafx.scene.control.behavior.ButtonBehavior$$Lambda$247.642849157.handle > > at > com.sun.javafx.scene.control.inputmap.InputMap.handle(InputMap.java:274) > > at > > > com.sun.javafx.scene.control.inputmap.InputMap$$Lambda$242.1652994145.handle > > at > > > com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:247) > > at > > > com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80) > > at > > > com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:234) > > at > > > com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) > > at > > > com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) > > at > > > com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) > > at > > > com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) > > at > > > com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) > > at > > > com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) > > at > > > com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) > > at > > > com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) > > at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) > > at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54) > > at javafx.event.Event.fireEvent(Event.java:198) > > at javafx.scene.Scene$MouseHandler.process(Scene.java:3890) > > at javafx.scene.Scene.processMouseEvent(Scene.java:1885) > > at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2618) > > at > > > com.sun.javafx.tk.quantum.EmbeddedScene.lambda$mouseEvent$4(EmbeddedScene.java:287) > > at com.sun.javafx.tk.quantum.EmbeddedScene$$Lambda$322.1002466434.run > > at java.security.AccessController.doPrivileged(AccessController.java) > > at > > > com.sun.javafx.tk.quantum.EmbeddedScene.lambda$mouseEvent$5(EmbeddedScene.java:280) > > at com.sun.javafx.tk.quantum.EmbeddedScene$$Lambda$321.1000105301.run > > at > > > com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428) > > at com.sun.javafx.application.PlatformImpl$$Lambda$163.1646337711.run > > at java.security.AccessController.doPrivileged(AccessController.java) > > at > > > com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427) > > at com.sun.javafx.application.PlatformImpl$$Lambda$162.158199555.run > > at > > > com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96) > > > > Any help would be very much appreciated. > > > > Thanks, > > Steven > > >