Modify ↓
Opened 4 years ago
Closed 4 years ago
#20965 closed defect (fixed)
[Patch] History browser: NPE when restoring deleted tag value
Reported by: | anonymous | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | 21.06 |
Component: | Core | Version: | tested |
Keywords: | template_report history browser restore tag deleted javabug regression | Cc: | simon04 |
Description
What steps will reproduce the problem?
- Downloaded small region, selected way 231287414 (currently at version 6)
- "History" button in selection sidebar area to bring up list of revisions
- Showed diff of two most recent revisions
- Right-click on one of the deleted tags on the right hand side of the diff view to bring up the context menu
- Select "Restore selected tags"
- JOSM crashes
Crash is very repeatable. Does not appear to crash for all tags, maybe only when restoring a deleted tag?
What is the expected result?
What happens instead?
Please provide any additional information below. Attach a screenshot if possible.
Relative:URL: ^/trunk Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b Last:Changed Date: 2021-06-02 22:03:39 +0200 (Wed, 02 Jun 2021) Revision:17919 Build-Date:2021-06-02 20:11:30 URL:https://josm.openstreetmap.de/svn/trunk Identification: JOSM/1.5 (17919 en) Linux Ubuntu 20.10 Memory Usage: 551 MB / 4096 MB (73 MB allocated, but free) Java version: 11.0.11+9-Ubuntu-0ubuntu2.20.10, Ubuntu, OpenJDK 64-Bit Server VM Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel Screen: :0.0 1920×1080 (scaling 1.00×1.00) Maximum Screen Size: 1920×1080 Best cursor sizes: 16×16→16×16, 32×32→32×32 Environment variable LANG: en_US.UTF-8 System property file.encoding: UTF-8 System property sun.jnu.encoding: UTF-8 Locale info: en_US Numbers with default locale: 1234567890 -> 1234567890 Desktop environment: ubuntu:GNOME Java package: openjdk-11-jre:amd64-11.0.11+9-0ubuntu2~20.10 Java ATK Wrapper package: libatk-wrapper-java:all-0.38.0-1 libcommons-compress-java: libcommons-compress-java:all-1.20-1 libcommons-logging-java: libcommons-logging-java:all-1.2-2 fonts-noto: fonts-noto:- Dataset consistency test: No problems found Plugins: + ImproveWay (32) + KartaView (374) + alignways (35753) + conflation (0.6.6) + editgpx (35562) + intersection (0.0.7) + jts (35458) + reverter (35732) + scripting (30798) + tageditor (35640) + todo (30306) + turnlanes-tagging (288) + undelete (35640) + utilsplugin2 (35691) + wikipedia (1.1.4) Tagging presets: + https://josm.openstreetmap.de/josmfile?page=Presets/BuildingPreset&zip=1 + https://josm.openstreetmap.de/josmfile?page=Presets/Baseroadscheckprojects&zip=1 Last errors/warnings: - 00029.502 E: Failed to locate image 'preference.png' - 00041.191 E: Handled by bug report queue: java.lang.NullPointerException - 00238.296 E: Handled by bug report queue: java.lang.NullPointerException - 00405.038 E: Handled by bug report queue: java.lang.NullPointerException
=== REPORTED CRASH DATA === BugReportExceptionHandler#handleException: No data collected. Warning issued by: BugReportExceptionHandler#handleException === STACK TRACE === Thread: AWT-EventQueue-0 (19) of main java.lang.NullPointerException at java.base/java.util.HashMap.merge(HashMap.java:1267) at java.base/java.util.stream.Collectors.lambda$toMap$68(Collectors.java:1658) at java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) at java.base/java.util.stream.IntPipeline$1$1.accept(IntPipeline.java:180) at java.base/java.util.stream.IntPipeline$9$1.accept(IntPipeline.java:369) at java.base/java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:108) at java.base/java.util.Spliterator$OfInt.forEachRemaining(Spliterator.java:699) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) at org.openstreetmap.josm.actions.RestorePropertyAction.actionPerformed(RestorePropertyAction.java:58) at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:369) at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1020) at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1064) at java.desktop/java.awt.Component.processMouseEvent(Component.java:6635) at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) at java.desktop/java.awt.Component.processEvent(Component.java:6400) at java.desktop/java.awt.Container.processEvent(Container.java:2263) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547) at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 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) === RUNNING THREADS === Thread: TMS-downloader-7 (65) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: styled-map-renderer-0 (142) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: TMS-downloader-6 (64) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Java2D Disposer (15) of system java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176) java.desktop@11.0.11/sun.java2d.Disposer.run(Disposer.java:144) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-0 (58) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: ForkJoinPool.commonPool-worker-7 (30) java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:275) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1619) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: message-notifier-0 (51) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123) java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182) java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-22 (96) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: AWT-Shutdown (20) of system java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.Object.wait(Object.java:328) java.desktop@11.0.11/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TimerQueue (21) of system java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:217) java.desktop@11.0.11/javax.swing.TimerQueue.run(TimerQueue.java:171) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-14 (72) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: ForkJoinPool.commonPool-worker-5 (31) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: main-worker-0 (18) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-18 (91) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-24 (98) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-20 (94) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Signal Dispatcher (4) of system Thread: TMS-downloader-3 (61) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Common-Cleaner (10) of InnocuousThreadGroup java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155) java.base@11.0.11/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) java.base@11.0.11/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134) Thread: TMS-downloader-9 (67) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: image-fetcher-0 (154) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-2 (60) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Timer-1 (57) of main java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.Object.wait(Object.java:328) java.base@11.0.11/java.util.TimerThread.mainLoop(Timer.java:527) java.base@11.0.11/java.util.TimerThread.run(Timer.java:506) Thread: TMS-downloader-8 (66) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: changeset-updater-0 (52) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123) java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182) java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Keep-Alive-SocketCleaner (32) of InnocuousThreadGroup java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/sun.net.www.http.KeepAliveStreamCleaner.run(KeepAliveStreamCleaner.java:101) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) java.base@11.0.11/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134) Thread: DestroyJavaVM (53) of main Thread: Finalizer (3) of system java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176) java.base@11.0.11/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170) Thread: AWT-EventQueue-0 (19) of main Stacktrace see above. Thread: FileSystemWatchService (33) of main java.base@11.0.11/sun.nio.fs.LinuxWatchService.poll(Native Method) java.base@11.0.11/sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:316) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-17 (90) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Reference Handler (2) of system java.base@11.0.11/java.lang.ref.Reference.waitForReferencePendingList(Native Method) java.base@11.0.11/java.lang.ref.Reference.processPendingReferences(Reference.java:241) java.base@11.0.11/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213) Thread: TMS-downloader-11 (69) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-21 (95) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-15 (81) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-1 (59) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: JCS-ElementEventQueue-Thread-1 (45) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: AWT-XAWT (16) of system java.desktop@11.0.11/sun.awt.X11.XToolkit.waitForEvents(Native Method) java.desktop@11.0.11/sun.awt.X11.XToolkit.run(XToolkit.java:684) java.desktop@11.0.11/sun.awt.X11.XToolkit.run(XToolkit.java:648) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: styled-map-renderer-3 (145) java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: styled-map-renderer-2 (144) java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:275) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1619) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: TMS-downloader-16 (82) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Weak reference cleaner (35) of main java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155) java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176) app//org.openstreetmap.josm.tools.ListenableWeakReference.clean(ListenableWeakReference.java:60) app//org.openstreetmap.josm.tools.ListenableWeakReference$$Lambda$395/0x0000000840473440.run(Unknown Source) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-12 (70) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: Timer-0 (55) of main java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.util.TimerThread.mainLoop(Timer.java:553) java.base@11.0.11/java.util.TimerThread.run(Timer.java:506) Thread: Map Status Collector (141) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433) app//org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:438) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-10 (68) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: RemoteControl HTTP Server (49) of main java.base@11.0.11/java.net.PlainSocketImpl.socketAccept(Native Method) java.base@11.0.11/java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:458) java.base@11.0.11/java.net.ServerSocket.implAccept(ServerSocket.java:565) java.base@11.0.11/java.net.ServerSocket.accept(ServerSocket.java:533) app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104) Thread: ForkJoinPool.commonPool-worker-3 (29) java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: pool-1-thread-1 (46) java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234) java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462) java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361) java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-5 (63) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: styled-map-renderer-1 (143) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628) java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) Thread: Timer-2 (139) of main java.base@11.0.11/java.lang.Object.wait(Native Method) java.base@11.0.11/java.lang.Object.wait(Object.java:328) java.base@11.0.11/java.util.TimerThread.mainLoop(Timer.java:527) java.base@11.0.11/java.util.TimerThread.run(Timer.java:506) Thread: File Watcher (34) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.take(LinkedBlockingDeque.java:671) java.base@11.0.11/sun.nio.fs.AbstractWatchService.take(AbstractWatchService.java:118) app//org.openstreetmap.josm.io.FileWatcher.processEvents(FileWatcher.java:120) app//org.openstreetmap.josm.io.FileWatcher$$Lambda$340/0x00000008403d2840.run(Unknown Source) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-4 (62) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-13 (71) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-23 (97) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: TMS-downloader-19 (93) of main java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method) java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194) java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081) java.base@11.0.11/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:107) app//org.openstreetmap.josm.data.cache.HostLimitQueue.take(HostLimitQueue.java:28) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114) java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) java.base@11.0.11/java.lang.Thread.run(Thread.java:829) Thread: RemoteControl HTTP Server (50) of main java.base@11.0.11/java.net.PlainSocketImpl.socketAccept(Native Method) java.base@11.0.11/java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:458) java.base@11.0.11/java.net.ServerSocket.implAccept(ServerSocket.java:565) java.base@11.0.11/java.net.ServerSocket.accept(ServerSocket.java:533) app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)
Attachments (0)
Change History (7)
comment:1 by , 4 years ago
Keywords: | history browser restore tag deleted added |
---|---|
Summary: | NPE when restoring (deleted?) tag value → History browser: NPE when restoring (deleted?) tag value |
comment:5 by , 4 years ago
Cc: | added |
---|---|
Keywords: | javabug regression added |
Milestone: | → 21.06 |
Summary: | History browser: NPE when restoring (deleted?) tag value → [Patch] History browser: NPE when restoring deleted tag value |
regression of
r17773
javabug in
JDK-8148463
see also
this answer on stackoverflow
Collectors.toMap()
for some reason doesn't allow null
values. If you ask me, that's more of a bug than a feature, but it doesn't look like that issue is going be resolved anytime soon.
Workaround:
-
src/org/openstreetmap/josm/actions/RestorePropertyAction.java
5 5 6 6 import java.awt.event.ActionEvent; 7 7 import java.util.Collections; 8 import java.util.HashMap; 8 9 import java.util.Map; 9 10 import java.util.function.IntFunction; 10 11 import java.util.function.Supplier; 11 import java.util.stream.Collectors;12 12 13 13 import javax.swing.AbstractAction; 14 14 import javax.swing.ListSelectionModel; … … 55 55 if (primitive == null) return; 56 56 57 57 Map<String, String> changes = TableHelper.selectedIndices(selectionModel).boxed() 58 .collect( Collectors.toMap(keyFn::apply, valueFn::apply, (a, b) -> b));58 .collect(HashMap::new, (m,i)->m.put(keyFn.apply(i), valueFn.apply(i)), HashMap::putAll); 59 59 ChangePropertyCommand command = new ChangePropertyCommand(Collections.singleton(primitive), changes); 60 60 UndoRedoHandler.getInstance().add(command); 61 61 }
Note:
See TracTickets
for help on using tickets.
Yes, can reproduce when right clicking on an empty field (deleted tag). Left/right side and older/new version do not matter.