In a Vassal v3.4.2 online session, I am consistently getting crashes when I try to send someone else a Private Message. When someone tried to send me a Private Message, the Private Message window appeared but Vassal was frozen from that point and I have to kill it and restart.
The other person sending me a PM caused the freeze; I ended up killing off Vassal completely. I can’t be sure so I need to test this some more. I will try myself from two sessions when I get a chance; unless anything is obvious to developers from this log…
…it was taken around the time of the crashes. First error was the freeze and I think the log file starts after that. Second one was a more typical Vassal crash where the module was still active after the error message - this error was triggered when I tried trying to send a PM and I have noticed this before under v3.4.2 but not previously. I notice one particular error a few lines into the log: java.lang.NegativeArraySizeException: -40
2020-09-23 09:24:11,198 [0-main] INFO VASSAL.launch.StartUp - Starting
2020-09-23 09:24:11,204 [0-main] INFO VASSAL.launch.StartUp - OS Mac OS X 10.15.6
2020-09-23 09:24:11,204 [0-main] INFO VASSAL.launch.StartUp - Java version 14.0.2
2020-09-23 09:24:11,204 [0-main] INFO VASSAL.launch.StartUp - VASSAL version 3.4.2
2020-09-23 09:24:11,717 [0-AWT-EventQueue-0] INFO VASSAL.launch.ModuleManager - Manager
2020-09-23 09:24:19,399 [0-SwingWorker-pool-1-thread-1] INFO VASSAL.launch.AbstractLaunchAction - Loading module file /Users/Mark/Documents/Vassal Modules/CCNapoleonics3_42.vmod
2020-09-23 09:24:19,653 [0-SwingWorker-pool-1-thread-1] INFO VASSAL.launch.TilingHandler - No images to tile.
2020-09-23 09:24:19,654 [0-SwingWorker-pool-1-thread-1] INFO VASSAL.launch.AbstractLaunchAction - Loading module Commands & Colors: Napoleonics
2020-09-23 09:24:19,665 [0-SwingWorker-pool-1-thread-1] INFO VASSAL.tools.io.ProcessLauncher - launching /Applications/VASSAL 3.4.2.app/Contents/MacOS/jre/bin/java -Xms512M -Xmx1024M -DVASSAL.id=1 -DVASSAL.port=49984 -Duser.home=/Users/Mark -Duser.dir=/Applications/VASSAL 3.4.2.app -cp Contents/Resources/Java/Vengine.jar -Xdock:name=Commands & Colors: Napoleonics -Xdock:icon=/Applications/VASSAL 3.4.2.app/Contents/Resources/VASSAL.icns VASSAL.launch.Player --load -- /Users/Mark/Documents/Vassal Modules/CCNapoleonics3_42.vmod
2020-09-23 09:24:20,512 [1-main] INFO VASSAL.launch.StartUp - Starting
2020-09-23 09:24:20,518 [1-main] INFO VASSAL.launch.StartUp - OS Mac OS X 10.15.6
2020-09-23 09:24:20,519 [1-main] INFO VASSAL.launch.StartUp - Java version 14.0.2
2020-09-23 09:24:20,519 [1-main] INFO VASSAL.launch.StartUp - VASSAL version 3.4.2
2020-09-23 09:24:20,519 [1-main] INFO VASSAL.launch.Launcher - Player
2020-09-23 09:24:25,100 [1-AWT-EventQueue-0] WARN VASSAL.launch.BasicModule - Commands & Colors: Napoleonics version 3.42
2020-09-23 09:24:25,132 [1-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Next_mnemonic
2020-09-23 09:24:25,132 [1-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Prev_mnemonic
2020-09-23 09:24:25,132 [1-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Finish_mnemonic
2020-09-23 09:24:25,132 [1-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Cancel_mnemonic
2020-09-23 09:24:37,320 [1-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog -
java.lang.NegativeArraySizeException: -40
at java.desktop/java.awt.image.DataBufferInt.<init>(Unknown Source)
at java.desktop/java.awt.image.Raster.createPackedRaster(Unknown Source)
at java.desktop/java.awt.image.DirectColorModel.createCompatibleWritableRaster(Unknown Source)
at java.desktop/java.awt.image.BufferedImage.<init>(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.createImage(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.lambda$paintFromSingleCachedImage$0(Unknown Source)
at java.desktop/sun.awt.image.MultiResolutionCachedImage.getResolutionVariant(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.getResolutionVariant(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.drawHiDPIImage(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.drawImage(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.drawImage(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.paintFromSingleCachedImage(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.paint(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter.paint(Unknown Source)
at java.desktop/com.apple.laf.AquaTextFieldBorder.paintBorder(Unknown Source)
at java.desktop/javax.swing.JComponent.paintBorder(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JLayeredPane.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paintToOffscreen(Unknown Source)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(Unknown Source)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at java.desktop/javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at java.desktop/javax.swing.RepaintManager.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/java.awt.GraphicsCallback$PaintCallback.run(Unknown Source)
at java.desktop/sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)
at java.desktop/sun.awt.SunGraphicsCallback.runComponents(Unknown Source)
at java.desktop/java.awt.Container.paint(Unknown Source)
at java.desktop/java.awt.Window.paint(Unknown Source)
at java.desktop/javax.swing.RepaintManager$4.run(Unknown Source)
at java.desktop/javax.swing.RepaintManager$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
2020-09-23 09:27:16,615 [1-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive
2020-09-23 09:28:23,007 [0-SwingWorker-pool-1-thread-2] INFO VASSAL.launch.AbstractLaunchAction - Loading module file /Users/Mark/Documents/Vassal Modules/CCNapoleonics3_42.vmod
The error is consistantly repeated for me. Also, a gaming buddy told me that he was experiencing the same problem. We both use Mac but he is on Linux.
Here is the log from the time it happened this afternoon, both of us on v3.4.3 This time, I tried to send a PM and the whole Vassal (JVM?) session hung up. On my buddy’s advice, I waited rather than terminating the session. After about a minute or so, the Vassal session gave the crash dump. Here is the last part; once against showing the array out of bounds error.
VASSAL.script.expression.ExpressionException: null
at VASSAL.script.ExpressionInterpreter.evaluate(ExpressionInterpreter.java:311)
at VASSAL.script.expression.BeanShellExpression.evaluate(BeanShellExpression.java:51)
at VASSAL.script.expression.Expression.evaluate(Expression.java:64)
at VASSAL.counters.Embellishment.checkPropertyLevel(Embellishment.java:550)
at VASSAL.counters.Embellishment.getName(Embellishment.java:384)
at VASSAL.counters.Embellishment.getName(Embellishment.java:380)
at VASSAL.counters.Restricted.getName(Restricted.java:108)
at VASSAL.counters.Labeler.setLabel(Labeler.java:464)
at VASSAL.counters.Labeler.mySetState(Labeler.java:234)
at VASSAL.build.GpIdChecker$SlotElement.copyState(GpIdChecker.java:378)
at VASSAL.build.GpIdChecker$SlotElement.createPiece(GpIdChecker.java:353)
at VASSAL.build.GpIdChecker.createUpdatedPiece(GpIdChecker.java:219)
at VASSAL.build.module.GameRefresher.processGamePiece(GameRefresher.java:231)
at VASSAL.build.module.GameRefresher.execute(GameRefresher.java:182)
at VASSAL.build.module.GameRefresher$RefreshDialog.run(GameRefresher.java:361)
at VASSAL.build.module.GameRefresher$RefreshDialog.lambda$initComponents$1(GameRefresher.java:329)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.WaitDispatchSupport$2.run(Unknown Source)
at java.desktop/java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.desktop/java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.desktop/java.awt.WaitDispatchSupport.enter(Unknown Source)
at java.desktop/java.awt.Dialog.show(Unknown Source)
at java.desktop/java.awt.Component.show(Unknown Source)
at java.desktop/java.awt.Component.setVisible(Unknown Source)
at java.desktop/java.awt.Window.setVisible(Unknown Source)
at java.desktop/java.awt.Dialog.setVisible(Unknown Source)
at VASSAL.build.module.GameRefresher.start(GameRefresher.java:105)
at VASSAL.build.module.GameRefresher$1.actionPerformed(GameRefresher.java:88)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at java.desktop/javax.swing.AbstractButton.doClick(Unknown Source)
at java.desktop/com.apple.laf.ScreenMenuItem.actionPerformed(Unknown Source)
at java.desktop/java.awt.MenuItem.processActionEvent(Unknown Source)
at java.desktop/java.awt.MenuItem.processEvent(Unknown Source)
at java.desktop/java.awt.MenuComponent.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.MenuComponent.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
2020-09-24 14:03:48,676 [11-AWT-EventQueue-0] ERROR VASSAL.build.module.GameRefresher - Can't refresh piece dicetray: No Map
2020-09-24 14:04:29,726 [13-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Next_mnemonic
2020-09-24 14:04:29,727 [13-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Prev_mnemonic
2020-09-24 14:04:29,727 [13-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Finish_mnemonic
2020-09-24 14:04:29,728 [13-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Cancel_mnemonic
2020-09-24 14:04:29,728 [13-AWT-EventQueue-0] ERROR VASSAL.i18n.BundleHelper - No Translation: Wizard.Help_mnemonic
2020-09-24 14:06:13,959 [13-AWT-EventQueue-0] INFO VASSAL.script.ExpressionInterpreter - Attempting to load /VASSAL/script/init_expression.bsh URI generated=jar:file:/Applications/VASSAL-3.4.3-8a786d685.app/Contents/Resources/Java/Vengine.jar!/VASSAL/script/init_expression.bsh
2020-09-24 14:08:17,371 [13-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive
2020-09-24 14:15:16,349 [13-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive
2020-09-24 14:17:16,358 [13-write game.vassalengine.org/62.210.178.7] WARN VASSAL.tools.logging.LoggedOutputStream - Sent keep-alive
2020-09-24 14:17:32,324 [13-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog -
java.lang.NegativeArraySizeException: -40
at java.desktop/java.awt.image.DataBufferInt.<init>(Unknown Source)
at java.desktop/java.awt.image.Raster.createPackedRaster(Unknown Source)
at java.desktop/java.awt.image.DirectColorModel.createCompatibleWritableRaster(Unknown Source)
at java.desktop/java.awt.image.BufferedImage.<init>(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.createImage(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.lambda$paintFromSingleCachedImage$0(Unknown Source)
at java.desktop/sun.awt.image.MultiResolutionCachedImage.getResolutionVariant(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.getResolutionVariant(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.drawHiDPIImage(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.drawImage(Unknown Source)
at java.desktop/sun.java2d.SunGraphics2D.drawImage(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.paintFromSingleCachedImage(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter$AquaSingleImagePainter.paint(Unknown Source)
at java.desktop/com.apple.laf.AquaPainter.paint(Unknown Source)
at java.desktop/com.apple.laf.AquaTextFieldBorder.paintBorder(Unknown Source)
at java.desktop/javax.swing.JComponent.paintBorder(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/javax.swing.JLayeredPane.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paintChildren(Unknown Source)
at java.desktop/javax.swing.JComponent.paintToOffscreen(Unknown Source)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(Unknown Source)
at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at java.desktop/javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at java.desktop/javax.swing.RepaintManager.paint(Unknown Source)
at java.desktop/javax.swing.JComponent.paint(Unknown Source)
at java.desktop/java.awt.GraphicsCallback$PaintCallback.run(Unknown Source)
at java.desktop/sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)
at java.desktop/sun.awt.SunGraphicsCallback.runComponents(Unknown Source)
at java.desktop/java.awt.Container.paint(Unknown Source)
at java.desktop/java.awt.Window.paint(Unknown Source)
at java.desktop/javax.swing.RepaintManager$4.run(Unknown Source)
at java.desktop/javax.swing.RepaintManager$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
The error is consistantly repeated for me. Also, a gaming buddy told me
that he was experiencing the same problem. We both use Mac but he is on
Linux.
Here is the log from the time it happened this afternoon, both of us on
v3.4.3 This time, I tried to send a PM and the whole Vassal (JVM?)
session hung up. On my buddy’s advice, I waited rather than terminating
the session. After about a minute or so, the Vassal session gave the
crash dump. Here is the last part; once against showing the array out of
bounds error.
Thanks for reporting this. We think we’ve solved the problem. Try
VASSAL-3.4.4-SNAPSHOT-0c9d947ed:
Hi Joel - Thank you. That fix tests out fine - using MacOs to Linux (Fedora, on an old intel laptop).
At the Linux end (still running v3.4.2) when the first message was received, a message popped up about being out of memory, “please increase Max Heap and restart”. Max Heap was already 1024MB, also the module seemed to be otherwise ok - so I didn’t increase it but instead restarted & resynched. A repeat of the message send didn’t trigger the warning message. Maybe nothing to do with this issue, and anyway, it was on v3.4.2 as I said.