[Patch] Creating a conflict after editing a relation inside and outside the editor throws an exception
What steps will reproduce the problem?
- Download OSM data with a relation
- Select a relation and open the Edit relation dialog
- Switch back to the main window
- Split up a way which is part of the selected relation
- Delete the relation tag from one part of the way (Override warning message box)
- Switch back to the Edit relation dialog
- Editing something to make the relation dirty
- Click OK in the Edit relation dialog
- A warning dialog appears and asks if you want to create a conflict because the relation was edited inside and outside the relation editor.
- Click OK (conflict is created)
What is the expected result?
No error box
What happens instead?
The "Report a bug" error box appears.
URL:http://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2016-07-13 02:41:16 +0200 (Wed, 13 Jul 2016)
Build-Date:2016-07-13 01:32:49
Revision:10529
Relative:URL: ^/trunk
Identification: JOSM/1.5 (10529 en) Windows 7 64-Bit
Memory Usage: 1059 MB / 3604 MB (791 MB allocated, but free)
Java version: 1.8.0_91-b14, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Dataset consistency test: No problems found
Plugins:
- apache-commons (32584)
- ejml (32639)
- geotools (32584)
- jts (32539)
- measurement (32454)
- opendata (32584)
- utilsplugin2 (32584)
Tagging presets:
- https://josm.openstreetmap.de/josmfile?page=Presets/Leaftype&zip=1
Last errors/warnings:
- W: Unable to delete file <josm.cache>\tiles\TMS.key
- W: Unable to delete file <josm.cache>\tiles\TMS.data
- W: Unable to delete file <josm.cache>\tiles\TMS_BLOCK.key
- W: Unable to delete file <josm.cache>\tiles\TMS_BLOCK.data
- W: Unable to delete file <josm.cache>\tiles\TMS_INDEX.key
- W: Unable to delete file <josm.cache>\tiles\TMS_INDEX.data
- W: Unable to delete file <josm.cache>\tiles\TMS_INDEX_v2.key
- W: Unable to delete file <josm.cache>\tiles\TMS_INDEX_v2.data
- W: Conflict in data - <html>This relation has been changed outside of the editor.<br>You cannot apply your changes and continue editing.<br><br>Do you want to create a conflict and close the editor?</html>
- E: java.lang.IllegalArgumentException: Attempted to remove listener that was not in list: org.openstreetmap.josm.gui.dialogs.relation.SelectionTableModel@96ca4ca
java.lang.IllegalArgumentException: Attempted to remove listener that was not in list: org.openstreetmap.josm.gui.dialogs.relation.SelectionTableModel@96ca4ca
at org.openstreetmap.josm.gui.layer.MainLayerManager.removeActiveLayerChangeListener(MainLayerManager.java:195)
at org.openstreetmap.josm.gui.dialogs.relation.SelectionTableModel.unregister(SelectionTableModel.java:54)
at org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor.setVisible(GenericRelationEditor.java:756)
at org.openstreetmap.josm.gui.dialogs.relation.actions.SavingAction.hideEditor(SavingAction.java:191)
at org.openstreetmap.josm.gui.dialogs.relation.actions.OKAction.actionPerformed(OKAction.java:46)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(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.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(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)
Change History
(9)
Summary: |
Creating a conflict after editing relation members while relation editor was open led to exception → Creating a conflict after editing a relation inside and outside the editor throws an exception
|
Cc: |
michael2402 added
|
Keywords: |
regression gsoc-core added
|
Milestone: |
→ 16.07
|
Summary: |
Creating a conflict after editing a relation inside and outside the editor throws an exception → [Patch] Creating a conflict after editing a relation inside and outside the editor throws an exception
|
Resolution: |
→ fixed
|
Status: |
new → closed
|
Independent from the exception, there is a new button in the relation window to completely avoid these conflicts. See Help/Dialog/RelationEditor for the conflict free workflow.