vassalengine / vassal

VASSAL, the open-source boardgame engine
https://vassalengine.org
GNU Lesser General Public License v2.1
426 stars 102 forks source link

"move" is null exception occurring in recent dev build #11473

Closed riverwanderer closed 1 year ago

riverwanderer commented 2 years ago

Picked this error up when using snapshot 0da792f with a couple of unrelated modules and operations (one was simply moving cards to and from a deck, the other was moving pieces on the map in C&C Ancients (error log below).

022-05-28 11:51:26,078 [64138-SwingWorker-pool-1-thread-5] INFO  VASSAL.launch.AbstractLaunchAction - Loading module file /Users/Mark/Dropbox/Vassal Test Releases/C&C Ancients/CCAncientsV4-2-0Beta2.vmod
2022-05-28 11:51:26,144 [64138-SwingWorker-pool-1-thread-5] INFO  VASSAL.launch.TilingHandler - No images to tile.
2022-05-28 11:51:26,145 [64138-SwingWorker-pool-1-thread-5] INFO  VASSAL.launch.AbstractLaunchAction - Loading module Commands & Colors Ancients
2022-05-28 11:51:26,145 [64138-SwingWorker-pool-1-thread-5] INFO  VASSAL.tools.io.ProcessLauncher - launching /Applications/VASSAL-3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes.app/Contents/MacOS/jre/bin/java -Xms512M -Xmx512M -Duser.home=/Users/Mark -Duser.dir=/Applications/VASSAL-3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes.app -cp Contents/Resources/Java/Vengine.jar -Xdock:name=Commands & Colors Ancients -Xdock:icon=/Applications/VASSAL-3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes.app/Contents/Resources/VASSAL.icns -Dsun.java2d.opengl=true -Dsun.java2d.opengl.fbobject=false VASSAL.launch.Editor --edit -- /Users/Mark/Dropbox/Vassal Test Releases/C&C Ancients/CCAncientsV4-2-0Beta2.vmod
2022-05-28 11:51:26,540 [65248-main] INFO  VASSAL.launch.StartUp - Starting
2022-05-28 11:51:26,547 [65248-main] INFO  VASSAL.launch.StartUp - OS Mac OS X 12.4 x86_64
2022-05-28 11:51:26,547 [65248-main] INFO  VASSAL.launch.StartUp - Java version 18.0.1
2022-05-28 11:51:26,547 [65248-main] INFO  VASSAL.launch.StartUp - Java home /Applications/VASSAL-3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes.app/Contents/MacOS/jre
2022-05-28 11:51:26,547 [65248-main] INFO  VASSAL.launch.StartUp - VASSAL version 3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes
2022-05-28 11:51:26,547 [65248-main] INFO  VASSAL.launch.Launcher - Editor
2022-05-28 11:51:28,852 [65248-AWT-EventQueue-0] INFO  VASSAL.build.GameModule - Commands & Colors Ancients version 4.2.0Beta2
2022-05-28 11:58:05,548 [65248-AWT-EventQueue-0] INFO  VASSAL.tools.io.ProcessLauncher - launching /Applications/VASSAL-3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes.app/Contents/MacOS/jre/bin/java -classpath Contents/Resources/Java/Vengine.jar -Duser.dir=/Applications/VASSAL-3.6.7-SNAPSHOT-0da792f-CombinedUndoFixes.app VASSAL.launch.ModuleManager --update-module /Users/Mark/Dropbox/Vassal Test Releases/C&C Ancients/CCAncientsV4-2-0Beta2.vmod
2022-05-28 11:59:15,127 [65248-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog - 
java.lang.NullPointerException: Cannot invoke "VASSAL.command.Command.append(VASSAL.command.Command)" because "move" is null
    at VASSAL.build.module.map.PieceMover.performDrop(PieceMover.java:1337)
    at VASSAL.build.module.map.PieceMover.mouseReleased(PieceMover.java:1298)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:298)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:298)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at VASSAL.build.module.Map.mouseReleased(Map.java:1940)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.Component.processMouseEvent(Component.java:6616)
    at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398)
    at java.desktop/java.awt.Component.processEvent(Component.java:6381)
    at java.desktop/java.awt.Container.processEvent(Container.java:2266)
    at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4991)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823)
    at VASSAL.build.module.Map.drop(Map.java:2076)
    at VASSAL.build.module.map.PieceMover$AbstractDragHandler.drop(PieceMover.java:2026)
    at java.desktop/java.awt.dnd.DropTarget.drop(DropTarget.java:455)
    at java.desktop/sun.awt.dnd.SunDropTargetContextPeer.processDropMessage(SunDropTargetContextPeer.java:548)
    at java.desktop/sun.lwawt.macosx.CDropTargetContextPeer.processDropMessage(CDropTargetContextPeer.java:129)
    at java.desktop/sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchDropEvent(SunDropTargetContextPeer.java:864)
    at java.desktop/sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEvent(SunDropTargetContextPeer.java:788)
    at java.desktop/sun.awt.dnd.SunDropTargetEvent.dispatch(SunDropTargetEvent.java:48)
    at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4856)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823)
    at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
    at java.desktop/java.awt.LightweightDispatcher.processDropTargetEvent(Container.java:4649)
    at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4511)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
    at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4823)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
    at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
    at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
    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)
BrentEaston commented 1 year ago

Hi @riverwanderer,

Are you still seeing this in any new releases, or can we close this now? Thanks, Brent.

riverwanderer commented 1 year ago

No, not seen this in any new release.

BrentEaston commented 1 year ago

Closing this as no longer reproducible.