VASSAL-3.5.5-ced5666 - Crash

Error dump from a Vassal crash that my gaming buddy experienced today whilst we were playing.
The version was VASSAL-3.5.5-ced5666 (a pre-release build)

The key part seems to me to be:

2021-04-03 01:38:30,941 [25868-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog -
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2105)
at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2079)
at java.desktop/javax.swing.JPopupMenu.show(JPopupMenu.java:940)
at VASSAL.build.module.ToolbarMenu.launch(ToolbarMenu.java:91)
at VASSAL.build.module.ToolbarMenu.lambda$new$0(ToolbarMenu.java:84)

2021-04-03 00:12:45,368 [33516-main] INFO VASSAL.launch.StartUp - Starting 2021-04-03 00:12:45,390 [33516-main] INFO VASSAL.launch.StartUp - OS Windows 10 10.0 2021-04-03 00:12:45,391 [33516-main] INFO VASSAL.launch.StartUp - Java version 16 2021-04-03 00:12:45,391 [33516-main] INFO VASSAL.launch.StartUp - VASSAL version 3.5.5-SNAPSHOT-ced5666 2021-04-03 00:12:45,536 [33516-AWT-EventQueue-0] INFO VASSAL.launch.ModuleManager - Manager 2021-04-03 00:13:02,767 [33516-SwingWorker-pool-2-thread-1] INFO VASSAL.launch.AbstractLaunchAction - Loading module file G:\My Drive\Downloads on ASUS RoG Laptop\CCNapoEpic3a41.vmod 2021-04-03 00:13:03,603 [33516-SwingWorker-pool-2-thread-1] INFO VASSAL.tools.io.ProcessLauncher - launching C:\Program Files\VASSAL-3.5.5-SNAPSHOT-ced5666\jre\bin\java -classpath lib\Vengine.jar -Xmx168M -Duser.home=C:\Users\pault -DVASSAL.port=57992 VASSAL.tools.image.tilecache.ZipFileImageTiler G:\My Drive\Downloads on ASUS RoG Laptop\CCNapoEpic3a41.vmod C:\Users\pault\AppData\Roaming\VASSAL\tiles\1d6070c00cef5e7dcb49b4dd88083d598a368437 256 256 2021-04-03 00:13:04,502 [5888-main] INFO VASSAL.tools.image.tilecache.ZipFileImageTiler - Starting 2021-04-03 00:13:04,628 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/1024px-Battle_of_Borodino_1812.jpg 2021-04-03 00:13:05,019 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/Bataille_de_Marengo v2.jpg 2021-04-03 00:13:05,175 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/British Dragoons.jpg 2021-04-03 00:13:05,225 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/CCN Epic ShortCuts.jpg 2021-04-03 00:13:05,445 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/CCN Epic Shortcuts.jpg 2021-04-03 00:13:05,654 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/Epic Sideboard.jpg 2021-04-03 00:13:06,281 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/EpicSpecial.jpg 2021-04-03 00:13:06,561 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/SpecialRules.jpg 2021-04-03 00:13:06,821 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/SpecialRules2.jpg 2021-04-03 00:13:06,947 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/Talavera v2.jpg 2021-04-03 00:13:07,053 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/VictoryBanner.jpg 2021-04-03 00:13:07,326 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Austrian_1.jpg 2021-04-03 00:13:07,510 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Austrian_2.jpg 2021-04-03 00:13:07,715 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_British_1.jpg 2021-04-03 00:13:08,559 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_French_1.jpg 2021-04-03 00:13:08,735 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_French_2.jpg 2021-04-03 00:13:08,968 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Portuguese_1.jpg 2021-04-03 00:13:09,060 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Prussian_01.jpg 2021-04-03 00:13:09,212 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Prussian_02.jpg 2021-04-03 00:13:09,388 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Russian_1.jpg 2021-04-03 00:13:09,587 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Russian_2.jpg 2021-04-03 00:13:09,785 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Spanish_1.jpg 2021-04-03 00:13:09,933 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Terrain.jpg 2021-04-03 00:13:10,155 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/charts_Terrain2.jpg 2021-04-03 00:13:10,326 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/courier rack.jpg 2021-04-03 00:13:10,355 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/dicefootprint_big.png 2021-04-03 00:13:10,374 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/map_epic.jpg 2021-04-03 00:13:11,347 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/map_lgm.jpg 2021-04-03 00:13:12,606 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/night_chart1.png 2021-04-03 00:13:12,616 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/night_chart2.png 2021-04-03 00:13:12,625 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/night_chart3.png 2021-04-03 00:13:12,636 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/night_chart4.png 2021-04-03 00:13:12,646 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/night_chart5.png 2021-04-03 00:13:12,657 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/night_chart6.png 2021-04-03 00:13:12,666 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/scouts.jpg 2021-04-03 00:13:12,747 [5888-main] INFO VASSAL.tools.image.tilecache.FileArchiveImageTiler - Tiling images/splashepic.jpg 2021-04-03 00:13:12,782 [5888-main] INFO VASSAL.tools.image.tilecache.ZipFileImageTiler - Exiting 2021-04-03 00:13:12,831 [33516-SwingWorker-pool-2-thread-1] INFO VASSAL.launch.AbstractLaunchAction - Loading module Commands & Colors Epic Napoleonics 2021-04-03 00:13:12,835 [33516-SwingWorker-pool-2-thread-1] INFO VASSAL.tools.io.ProcessLauncher - launching C:\Program Files\VASSAL-3.5.5-SNAPSHOT-ced5666\jre\bin\java -Xms512M -Xmx512M -Duser.home=C:\Users\pault -Duser.dir=C:\Program Files\VASSAL-3.5.5-SNAPSHOT-ced5666 -cp lib\Vengine.jar -Dsun.java2d.d3d=false VASSAL.launch.Player --load -- G:\My Drive\Downloads on ASUS RoG Laptop\CCNapoEpic3a41.vmod 2021-04-03 00:13:13,995 [25868-main] INFO VASSAL.launch.StartUp - Starting 2021-04-03 00:13:14,022 [25868-main] INFO VASSAL.launch.StartUp - OS Windows 10 10.0 2021-04-03 00:13:14,022 [25868-main] INFO VASSAL.launch.StartUp - Java version 16 2021-04-03 00:13:14,022 [25868-main] INFO VASSAL.launch.StartUp - VASSAL version 3.5.5-SNAPSHOT-ced5666 2021-04-03 00:13:14,022 [25868-main] INFO VASSAL.launch.Launcher - Player 2021-04-03 00:13:19,622 [25868-AWT-EventQueue-0] INFO VASSAL.script.ExpressionInterpreter - Attempting to load /VASSAL/script/init_expression.bsh URI generated=jar:file:/C:/Program%20Files/VASSAL-3.5.5-SNAPSHOT-ced5666/lib/Vengine.jar!/VASSAL/script/init_expression.bsh 2021-04-03 00:13:22,493 [25868-AWT-EventQueue-0] INFO VASSAL.build.GameModule - Commands & Colors Epic Napoleonics version 3.00a41 2021-04-03 00:13:22,522 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Next_mnemonic 2021-04-03 00:13:22,522 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Prev_mnemonic 2021-04-03 00:13:22,523 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Finish_mnemonic 2021-04-03 00:13:22,523 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Cancel_mnemonic 2021-04-03 00:14:34,695 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Next_mnemonic 2021-04-03 00:14:34,695 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Prev_mnemonic 2021-04-03 00:14:34,696 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Finish_mnemonic 2021-04-03 00:14:34,696 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Cancel_mnemonic 2021-04-03 00:14:34,696 [25868-AWT-EventQueue-0] WARN VASSAL.i18n.BundleHelper - No Translation: Wizard.Help_mnemonic 2021-04-03 00:16:53,766 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:18:53,782 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:20:53,791 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:22:53,798 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:26:13,662 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:28:13,668 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:35:37,518 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:37:37,519 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:39:37,526 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:41:37,528 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 00:43:37,530 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:00:40,543 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:02:40,548 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:04:40,561 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:06:40,564 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:21:57,342 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:23:57,351 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:25:57,360 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:27:57,373 [25868-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive 2021-04-03 01:38:30,941 [25868-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog - java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2105) at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2079) at java.desktop/javax.swing.JPopupMenu.show(JPopupMenu.java:940) at VASSAL.build.module.ToolbarMenu.launch(ToolbarMenu.java:91) at VASSAL.build.module.ToolbarMenu.lambda$new$0(ToolbarMenu.java:84) at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6617) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) at java.desktop/java.awt.Component.processEvent(Component.java:6382) at java.desktop/java.awt.Container.processEvent(Container.java:2264) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4993) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2322) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4825) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4934) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4563) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4504) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2308) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2773) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4825) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(AccessController.java:391) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) at java.base/java.security.AccessController.doPrivileged(AccessController.java:391) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

That’s a duplicate of 2994, which was first reported against 3.1.14 in 2010. We’ve never been able to determine how this happens. If you can reproduce it reliably, I’d like to know how.

Probably fixed as Bug 14327, as of e7c81ff.