#19485 closed defect (fixed)
Crash while combining two opposing roads
Reported by: | maarten | Owned by: | team |
---|---|---|---|
Priority: | critical | Milestone: | 20.07 |
Component: | Core | Version: | latest |
Keywords: | regression | Cc: | simon04 |
Description
What steps will reproduce the problem?
- make a way segment and add any highway tag and oneway=yes
- connect to this a second way segment, also with a highway tag where the direction is opposite of the first way
- combine both ways (C shortcut key)
What is the expected result?
Both roads should be combine to one where the oneway direction is leading
What happens instead?
Java exception, see below
Please provide any additional information below. Attach a screenshot if possible.
URL:https://josm.openstreetmap.de/svn/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2020-06-30 19:13:42 +0200 (Tue, 30 Jun 2020) Build-Date:2020-07-01 01:30:51 Revision:16731 Relative:URL: ^/trunk Identification: JOSM/1.5 (16731 en_GB) Windows 7 64-Bit OS Build number: Windows 7 Ultimate (7601) Memory Usage: 905 MB / 1820 MB (530 MB allocated, but free) Java version: 1.8.0_251-b08, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM Look and Feel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel Screen: \Display0 1920x1200 (scaling 1.0x1.0), \Display1 1920x1200 (scaling 1.0x1.0) Maximum Screen Size: 1920x1200 Best cursor sizes: 16x16 -> 32x32, 32x32 -> 32x32 VM arguments: [-Djava.security.manager, -Djava.security.policy=file:<java.home>\lib\security\javaws.policy, -DtrustProxy=true, -Djnlpx.home=<java.home>\bin, -Djnlpx.origFilenameArg=%UserProfile%\AppData\LocalLow\Sun\Java\Deployment\cache\6.0\56\1ee8cfb8-16a815c3, -Djnlpx.remove=false, -Djava.util.Arrays.useLegacyMergeSort=true, -Djnlpx.heapsize=NULL,2048m, -Djnlpx.splashport=63373, -Djnlp.application.href=https://josm.openstreetmap.de/download/josm.jnlp, -Djnlpx.jvm=<java.home>\bin\javaw.exe] Dataset consistency test: No problems found Plugins: + ImportImagePlugin (35248) + apache-commons (35362) + ejml (35313) + ext_tools (35499) + geotools (35169) + jaxb (35092) + jts (35122) + log4j (35092) + measurement (35405) + opendata (35405) + photo_geotagging (35499) + pt_assistant (2.1.10-80-g7d9bba3) + reverter (35499) + turnlanes (35405) + undelete (35499) + utilsplugin2 (35487) Map paint styles: + https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&style&zip=1 Last errors/warnings: - W: Missing plugin main version in plugin annotation-tester - W: Missing plugin main version in plugin nearclick - W: Missing plugin main version in plugin osmarender - W: Missing plugin main version in plugin plastic_laf - E: Handled by bug report queue: java.lang.UnsupportedOperationException === REPORTED CRASH DATA === BugReportExceptionHandler#handleException: No data collected. Warning issued by: BugReportExceptionHandler#handleException === STACK TRACE === Thread: AWT-EventQueue-2 (49) of javawsApplicationThreadGroup java.lang.UnsupportedOperationException at java.util.Collections$UnmodifiableList.set(Unknown Source) at java.util.Collections.swap(Unknown Source) at java.util.Collections.reverse(Unknown Source) at org.openstreetmap.josm.actions.CombineWayAction.combineWaysWorker(CombineWayAction.java:160) at org.openstreetmap.josm.actions.CombineWayAction.actionPerformed(CombineWayAction.java:300) 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 (1)
Change History (13)
comment:1 by , 5 years ago
Keywords: | regression added |
---|---|
Priority: | major → critical |
follow-up: 5 comment:3 by , 5 years ago
Does not happen with r16613.
USER@BOX:~$ java -Xmx500m -Djosm.home=/tmp/.josm_test -jar Downloads/JOSM/josm-snapshot-16613.jar Downloads/josm_19485_example.osm Unable to set SPI locale provider: null Unable to set SPI locale provider: null 2020-07-04 13:15:25.573 INFO: Log level is at INFO (INFO, 800) 2020-07-04 13:15:33.648 INFO: Obtained 68 Tag2Link rules from META-INF/resources/webjars/tag2link/2020.5.16/index.json 2020-07-04 13:15:35.354 INFO: GET https://josm.openstreetmap.de/wiki/StartupPage -> HTTP/1.1 200 (2.3 s) 2020-07-04 13:15:44.512 INFO: Changeset updater active (checks every 60 minutes if open changesets have been closed) 2020-07-04 13:15:44.784 INFO: Open file: ~/Downloads/josm_19485_example.osm (4008 bytes) 2020-07-04 13:15:44.894 INFO: Open file: ~/Downloads/josm_19485_example.osm (4008 bytes) completed in 109 ms 2020-07-04 13:15:46.975 INFO: Switching map mode from (none) to SelectAction 2020-07-04 13:16:06.993 INFO: Changeset updater inactive
Can reproduce with r16645. I noticed another problem, see attached example file josm_19485_example.osm.
With the real data example (lowest) the exception does not happen but JOSM offers to change the value of oneway
to -1
instead of changing the direction of the way without oneway=*
.
USER@BOX:~$ java -Xmx500m -Djosm.home=/tmp/.josm_test -jar Downloads/JOSM/josm-snapshot-16645.jar Downloads/josm_19485_example.osm Unable to set SPI locale provider: null Unable to set SPI locale provider: null 2020-07-04 13:16:47.584 INFO: Log level is at INFO (INFO, 800) 2020-07-04 13:16:56.348 INFO: Obtained 68 Tag2Link rules from META-INF/resources/webjars/tag2link/2020.5.16/index.json 2020-07-04 13:16:58.359 INFO: GET https://josm.openstreetmap.de/wiki/StartupPage -> HTTP/1.1 200 (2.5 s) 2020-07-04 13:17:06.905 INFO: Changeset updater active (checks every 60 minutes if open changesets have been closed) 2020-07-04 13:17:06.967 INFO: Open file: ~/Downloads/josm_19485_example.osm (4008 bytes) 2020-07-04 13:17:07.063 INFO: Open file: ~/Downloads/josm_19485_example.osm (4008 bytes) completed in 96 ms 2020-07-04 13:17:09.290 INFO: Switching map mode from (none) to SelectAction 2020-07-04 13:17:16.193 SEVERE: Handled by bug report queue: java.lang.UnsupportedOperationException java.lang.UnsupportedOperationException at java.base/java.util.Collections$UnmodifiableList.set(Collections.java:1312) at java.base/java.util.Collections.swap(Collections.java:501) at java.base/java.util.Collections.reverse(Collections.java:382) at org.openstreetmap.josm.actions.CombineWayAction.combineWaysWorker(CombineWayAction.java:160) at org.openstreetmap.josm.actions.CombineWayAction.actionPerformed(CombineWayAction.java:300) at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) at java.desktop/javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:311) at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:266) at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2993) at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2985) at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) at java.desktop/java.awt.Component.processEvent(Component.java:6408) at java.desktop/java.awt.Container.processEvent(Container.java:2263) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5007) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4839) at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4888) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4839) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 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)
comment:4 by , 5 years ago
Milestone: | → 20.07 |
---|
follow-up: 7 comment:5 by , 5 years ago
Replying to skyper:
With the real data example (lowest) the exception does not happen but JOSM offers to change the value of
oneway
to-1
instead of changing the direction of the way withoutoneway=*
.
That happend in earlier versions too in case you selected the left way first.
comment:7 by , 5 years ago
Replying to Klumbumbus:
Replying to skyper:
With the real data example (lowest) the exception does not happen but JOSM offers to change the value of
oneway
to-1
instead of changing the direction of the way withoutoneway=*
.
That happened in earlier versions too in case you selected the left way first.
I've created #19498.
comment:8 by , 5 years ago
Milestone: | 20.07 → 20.06 |
---|
follow-up: 11 comment:10 by , 5 years ago
I just had the same error with an incline tag. Is that also fixed with this change?
Interestingly: the incline was 0% but when I reversed the way, it wanted to make the incline -0%. Very little intelligence in that reversal :D
To reproduce you need to select the non oneway first and the oneway second.