Modify

Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#13479 closed defect (fixed)

IllegalArgumentException when toggling full screen mode with conflict dialog

Reported by: anonymous Owned by: team
Priority: normal Milestone: 16.08
Component: Core Version:
Keywords: template_report regression gsoc-core conflict Cc: michael2402

Description

What steps will reproduce the problem?

I'm sorry, I don't know how to reproduce the issue. I was working in full screen (F11). I went to upload my changes and had a conflict. I tried to resolve my conflicts. And did another upload, which was successful. I switched to Chrome, to login to OSM website, to send the other user a note (that I might have broken their changes when I tried to resolve my conflict). I switched back to JOSM and pressed F11 to exit full screen mode and got an exception dialog. My plan was to F11 out of full screen, then use the X in the upper right to exit the application.

What is the expected result?

F11 would exit full screen.

What happens instead?

F11 gave me an unexpected exception occurred dialog

Please provide any additional information below. Attach a screenshot if possible.

URL:http://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2016-08-11 21:54:24 +0200 (Thu, 11 Aug 2016)
Build-Date:2016-08-11 22:36:05
Revision:10786
Relative:URL: ^/trunk

Identification: JOSM/1.5 (10786 en) Windows 10 64-Bit
Memory Usage: 285 MB / 1362 MB (116 MB allocated, but free)
Java version: 1.8.0_73-b02, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
VM arguments: [-Djava.security.manager, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.vmargs=LURqYXZhLnV0aWwuQXJyYXlzLnVzZUxlZ2FjeU1lcmdlU29ydD10cnVlAA==, -Djnlpx.jvm=<java.home>\bin\javaw.exe, -Djnlpx.splashport=49229, -Djnlpx.home=<java.home>\bin, -Djnlpx.remove=false, -Djnlpx.offline=false, -Djnlpx.relaunch=true, -Djnlpx.session.data=%UserProfile%\AppData\Local\Temp\session5819942548861841544, -Djnlpx.heapsize=NULL,NULL, -Djava.security.policy=file:<java.home>\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.origFilenameArg=https://josm.openstreetmap.de/download/josm.jnlp]
Dataset consistency test: No problems found

Plugins:
+ PicLayer (32796)
+ apache-commons (32699)
+ buildings_tools (32796)
+ dataimport (32699)
+ ejml (32680)
+ ext_tools (32796)
+ geotools (32813)
+ jts (32699)
+ opendata (32811)
+ utilsplugin2 (32815)

Last errors/warnings:
- W: Unable to remove primitives from TestError [tester=org.openstreetmap.josm.data.validation.tests.UnconnectedWays$UnconnectedWaterways@fe518421, code=1301, message=Way end node near other way]. java.lang.UnsupportedOperationException
- E: Error header: Version mismatch: Provided 3, server had: 4 of Way 11457743
- E: Conflicts detected - <html>Uploading <strong>failed</strong> because the server has a newer version of one<br>of your nodes, ways, or relations.<br>The conflict is caused by the <strong>way</strong> with id <strong>11,457,743</strong>,<br>the server has version 4, your version is 3.<br><br>Click <strong>Synchronize way 11,457,743 only</strong> to synchronize the conflicting primitive only.<br>Click <strong>Synchronize entire dataset</strong> to synchronize the entire local dataset with the server.<br>Click <strong>Cancel</strong> to abort and continue editing.<br></html>
- W: Conflicts detected - <html>There was 1 conflict detected.</html>
- W: Merging deleted objects failed - <html>The following objects could not be copied to the target object<br>because they are deleted in the target dataset:<ul><li>node 102010408</li><li>node 102010410</li><li>node 102010412</li><li>node 102010413</li><li>node 102010414</li><li>18 more...</li></ul></html>
- W: Merging deleted objects failed - <html>The following objects could not be copied to the target object<br>because they are deleted in the target dataset:<ul><li>node 102010408</li><li>node 102010410</li><li>node 102010412</li><li>node 102010413</li><li>node 102010414</li><li>18 more...</li></ul></html>
- W: Unable to remove primitives from TestError [tester=org.openstreetmap.josm.data.validation.tests.UnconnectedWays$UnconnectedHighways@48b88116, code=1301, message=Way end node near other highway]. java.lang.UnsupportedOperationException
- E: java.lang.IllegalArgumentException: Listener was not registered before: org.openstreetmap.josm.actions.ZoomToAction@29b141dd
- E: java.lang.IllegalArgumentException: Listener was not registered before: org.openstreetmap.josm.actions.ZoomToAction@29b141dd
- E: java.lang.IllegalArgumentException: Listener was not registered before: org.openstreetmap.josm.actions.ZoomToAction@29b141dd


=== REPORTED CRASH DATA ===
BugReportExceptionHandler$BugReporterThread#askForBugReport:
No data collected.

=== STACK TRACE ===
Thread: AWT-EventQueue-2 (51) of javawsApplicationThreadGroup
java.lang.IllegalArgumentException: Listener was not registered before: org.openstreetmap.josm.actions.ZoomToAction@29b141dd
	at org.openstreetmap.josm.gui.layer.LayerManager.removeLayerChangeListener(LayerManager.java:364)
	at org.openstreetmap.josm.gui.layer.LayerManager.removeLayerChangeListener(LayerManager.java:352)
	at org.openstreetmap.josm.gui.widgets.OsmPrimitivesTable.unregisterListeners(OsmPrimitivesTable.java:105)
	at org.openstreetmap.josm.gui.conflict.pair.ListMerger.unregisterListeners(ListMerger.java:896)
	at org.openstreetmap.josm.gui.conflict.pair.ConflictResolver.unregisterListeners(ConflictResolver.java:362)
	at org.openstreetmap.josm.gui.dialogs.ConflictResolutionDialog.unregisterListeners(ConflictResolutionDialog.java:111)
	at org.openstreetmap.josm.gui.dialogs.ConflictResolutionDialog.removeNotify(ConflictResolutionDialog.java:50)
	at java.awt.Window$1DisposeAction.run(Unknown Source)
	at java.awt.Window.doDispose(Unknown Source)
	at java.awt.Dialog.doDispose(Unknown Source)
	at java.awt.Window.dispose(Unknown Source)
	at java.awt.Window.disposeImpl(Unknown Source)
	at java.awt.Window$1DisposeAction.run(Unknown Source)
	at java.awt.Window.doDispose(Unknown Source)
	at java.awt.Window.dispose(Unknown Source)
	at org.openstreetmap.josm.actions.FullscreenToggleAction.setMode(FullscreenToggleAction.java:81)
	at org.openstreetmap.josm.actions.FullscreenToggleAction.actionPerformed(FullscreenToggleAction.java:56)
	at javax.swing.SwingUtilities.notifyAction(Unknown Source)
	at javax.swing.JComponent.processKeyBinding(Unknown Source)
	at javax.swing.KeyboardManager.fireBinding(Unknown Source)
	at javax.swing.KeyboardManager.fireKeyboardAction(Unknown Source)
	at javax.swing.JComponent.processKeyBindingsForAllComponents(Unknown Source)
	at javax.swing.JComponent.processKeyBindings(Unknown Source)
	at javax.swing.JComponent.processKeyEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Attachments (0)

Change History (7)

comment:1 Changed 3 years ago by Don-vip

Cc: michael2402 added
Keywords: regression gsoc-core added

comment:2 Changed 3 years ago by Don-vip

Keywords: conflict added

comment:3 Changed 3 years ago by Don-vip

Milestone: 16.08

looks like #12999 - seems r10454 doesn't work in all cases

comment:4 Changed 3 years ago by Don-vip

Summary: F11 didn't exit full screenIllegalArgumentException when toggling full scren mode with conflict dialog

comment:5 Changed 3 years ago by Don-vip

In 10957/josm:

see #13479 - make ConflictResolutionDialog inherit from ExtendedDialog

comment:6 Changed 3 years ago by Don-vip

Resolution: fixed
Status: newclosed

In 10958/josm:

fix #13479 - safer management of listeners

comment:7 Changed 3 years ago by skyper

Summary: IllegalArgumentException when toggling full scren mode with conflict dialogIllegalArgumentException when toggling full screen mode with conflict dialog

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.