Brent, I have done various tests and here is what I found.
Method:
Bug 4278: I used the counter_intuitive test module from this thread: [url]https://forum.vassalengine.org/t/synchronizing-same-name-gp-on-different-maps-buggy/4678/1]
Bug 4302: I used the Marvel Heroes module to check order of reports in log
Where necessary I did more than one test run.
Results:
Vassal 3.1.20 - build 8224:
Bug 4278: fixed
Bug 4302: not addressed?
Vassal 3.2.0 - build 8221:
Bug 4278: fixed
Bug 4302: not addressed
Vassal 3.2.0 - build 8224:
Bug 4278: fixed
Bug 4302: errors/crash (see below)
Details:
With Vassal 3.2.0 - build 8224 the Marvel Heroes module crashes at the start, right after one or the other network player clicks on his/her initial check in button. Sometimes on the first click, sometimes on the second. Only the local computer will receive the error report, the remote one won’t know about it except the game won’t work as expected from there on: the local computer seems to be able to continue after closing the error message but the remote computer doesn’t seem to get the updates and synchronization is lost. Btw, those check-in buttons don’t involve global hotkeys.
Sample error message (but not sure this looks the same as in a previous test run):
2012-07-27 12:06:25,002 [0-main] INFO VASSAL.launch.StartUp - Starting
2012-07-27 12:06:25,002 [0-main] INFO VASSAL.launch.StartUp - OS Windows 7
2012-07-27 12:06:25,002 [0-main] INFO VASSAL.launch.StartUp - Java version 1.7.0_05
2012-07-27 12:06:25,002 [0-main] INFO VASSAL.launch.StartUp - VASSAL version 3.2.0-svn8224
2012-07-27 12:06:25,049 [0-AWT-EventQueue-0] INFO VASSAL.launch.ModuleManager - Manager
2012-07-27 12:06:42,443 [0-SwingWorker-pool-27262255-thread-1] INFO VASSAL.launch.AbstractLaunchAction - Loading module file C:\Users\Stefano\Desktop\MH module project\MHv1.2.vmod
2012-07-27 12:06:42,786 [0-SwingWorker-pool-27262255-thread-1] INFO VASSAL.launch.TilingHandler - No images to tile.
2012-07-27 12:06:42,786 [0-SwingWorker-pool-27262255-thread-1] INFO VASSAL.launch.AbstractLaunchAction - Loading module Marvel Heroes
2012-07-27 12:06:42,802 [0-SwingWorker-pool-27262255-thread-1] INFO VASSAL.tools.io.ProcessLauncher - launching C:\Program Files (x86)\Java\jre7\bin\java -Xms256M -Xmx512M -DVASSAL.id=1 -DVASSAL.port=50061 -Duser.home=C:\Users\Stefano -cp lib\Vengine.jar VASSAL.launch.Player --load – C:\Users\Stefano\Desktop\MH module project\MHv1.2.vmod
2012-07-27 12:06:43,629 [1-main] INFO VASSAL.launch.StartUp - Starting
2012-07-27 12:06:43,629 [1-main] INFO VASSAL.launch.StartUp - OS Windows 7
2012-07-27 12:06:43,629 [1-main] INFO VASSAL.launch.StartUp - Java version 1.7.0_05
2012-07-27 12:06:43,629 [1-main] INFO VASSAL.launch.StartUp - VASSAL version 3.2.0-svn8224
2012-07-27 12:06:43,629 [1-main] INFO VASSAL.launch.Launcher - Player
2012-07-27 12:06:47,544 [1-AWT-EventQueue-0] WARN VASSAL.launch.BasicModule - Marvel Heroes version 1.2
2012-07-27 12:08:46,627 [1-AWT-EventQueue-0] ERROR VASSAL.tools.ErrorDialog -
java.lang.StackOverflowError: null
at javax.swing.text.StyleContext$SmallAttributeSet.equals(Unknown Source) ~[na:1.7.0_05]
at java.util.WeakHashMap.eq(Unknown Source) ~[na:1.7.0_05]
at java.util.WeakHashMap.get(Unknown Source) ~[na:1.7.0_05]
at java.util.Collections$SynchronizedMap.get(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.StyleContext.getImmutableUniqueSet(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.StyleContext.addAttributes(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.AbstractDocument$AbstractElement.addAttributes(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.AbstractDocument$AbstractElement.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.AbstractDocument$LeafElement.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.AbstractDocument$BidiElement.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.AbstractDocument.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.AbstractDocument.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.PlainDocument.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.PlainDocument.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.DefaultEditorKit.createDefaultDocument(Unknown Source) ~[na:1.7.0_05]
at javax.swing.plaf.basic.BasicTextUI.installUI(Unknown Source) ~[na:1.7.0_05]
at javax.swing.JComponent.setUI(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.JTextComponent.setUI(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.JTextComponent.updateUI(Unknown Source) ~[na:1.7.0_05]
at javax.swing.text.JTextComponent.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.JTextField.(Unknown Source) ~[na:1.7.0_05]
at javax.swing.JTextField.(Unknown Source) ~[na:1.7.0_05]
at VASSAL.configure.NamedHotKeyConfigurer.(NamedHotKeyConfigurer.java:40) ~[Vengine.jar:na]
at VASSAL.counters.DynamicProperty$DynamicKeyCommandConfigurer.(DynamicProperty.java:413) ~[Vengine.jar:na]
at VASSAL.counters.DynamicProperty$1.buildChildConfigurer(DynamicProperty.java:87) ~[Vengine.jar:na]
at VASSAL.configure.ListConfigurer.getValueString(ListConfigurer.java:67) ~[Vengine.jar:na]
at VASSAL.counters.SetGlobalProperty.myGetType(SetGlobalProperty.java:111) ~[Vengine.jar:na]
at VASSAL.counters.Decorator.getType(Decorator.java:216) ~[Vengine.jar:na]
at VASSAL.counters.Decorator.getType(Decorator.java:217) ~[Vengine.jar:na]
at VASSAL.counters.Decorator.getType(Decorator.java:217) ~[Vengine.jar:na]
at VASSAL.counters.Decorator.getType(Decorator.java:217) ~[Vengine.jar:na]
at VASSAL.build.module.BasicCommandEncoder.encode(BasicCommandEncoder.java:458) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.encodeSubCommand(BasicModule.java:269) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.encode(BasicModule.java:250) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.encode(BasicModule.java:256) ~[Vengine.jar:na]
at VASSAL.launch.BasicModule.encode(BasicModule.java:256) ~[Vengine.jar:na]