﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
18398	NPE in WikipediaToggleDialog with language code yue	anonymous	floscher	"==== What steps will reproduce the problem?
1. Update JOSM to 15553
2. Run as usual
3. Open any Imagery

==== What is the expected result?

Run without any issud

==== What happens instead?

1. An update plugin dialog box popup.
2. Click update plugin.
3. Warning dialog box popup and plugins are not loaded

==== Please provide any additional information below. Attach a screenshot if possible.

{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2019-12-01 23:10:15 +0100 (Sun, 01 Dec 2019)
Revision:15553
Build-Date:2019-12-02 02:30:57
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (15553 en) Mac OS X 10.15
OS Build number: Mac OS X 10.15 (19A583)
Memory Usage: 521 MB / 2048 MB (198 MB allocated, but free)
Java version: 13.0.1+9, AdoptOpenJDK, OpenJDK 64-Bit Server VM
Screen: Display 69679052 1440x900
Maximum Screen Size: 1440x900

Plugins:
+ DirectDownload (35221)
+ EasyPresets (1537621333)
+ FastDraw (34977)
+ FixAddresses (34977)
+ HouseNumberTaggingTool (34977)
+ ImportImagePlugin (35125)
+ ImproveOsm (188)
+ PicLayer (35104)
+ SeaChart (35120)
+ SeaMapEditor (34908)
+ apache-commons (35092)
+ editgpx (35221)
+ ejml (35122)
+ geotools (35169)
+ imagery_offset_db (34908)
+ jaxb (35014)
+ jts (35122)
+ livegps (35221)
+ log4j (34908)
+ measurement (35221)
+ opendata (35179)
+ pdfimport (34977)
+ photo_geotagging (34908)
+ print (34972)
+ reverter (35226)
+ surveyor (34977)
+ terracer (34977)
+ undelete (34977)
+ utilsplugin2 (35238)
+ wikipedia (1.1.3)

Tagging presets:
+ https://raw.githubusercontent.com/OpenNauticalChart/josm/master/INT-1-preset.xml

Map paint styles:
- https://github.com/bastik/mapcss-tools/raw/osm/mapnik2mapcss/osm-results/mapnik.zip
- https://josm.openstreetmap.de/josmfile?page=Styles/Modified&zip=1
- https://raw.githubusercontent.com/OpenNauticalChart/josm/master/INT1_MapCSS.mapcss
- https://pasharm.github.io/New_basic_style_for_JOSM/New_basic_style.mapcss
- https://raw.githubusercontent.com/OpenSeaMap/josm/master/INT1_Seamark.mapcss
- https://raw.githubusercontent.com/OpenSidewalks/OpenSidewalks-Schema/master/open_sidewalks.mapcss
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/LitObjects&zip=1
- https://github.com/MissingMaps/josm_styles/archive/master.zip
- https://github.com/hotosm/HDM-JOSM-style/archive/master.zip
- https://josm.openstreetmap.de/josmfile?page=Styles/Osmc&zip=1
- https://josm.openstreetmap.de/josmfile?page=Styles/PublicTransportV2&zip=1

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
- W: Warning: Failed to scan file 'site-svn.openstreetmap.org-_applications_editors_josm_plugins_opendata_modules.txt' for module information. Skipping.
- W: Could not initialize Wikipedia app for language 'yue'!: java.lang.IllegalArgumentException: No Wikipedia for language 粵語 (yue) found!
- E: Handled by bug report queue: org.openstreetmap.josm.plugins.PluginException: An error occurred in plugin wikipedia. Cause: java.lang.reflect.InvocationTargetException. Cause: java.lang.NullPointerException
- W: Warning - <html>JOSM could not find information about the following plugins:<ul><li>livegps</li><li>SeaMapEditor</li><li>apache-commons</li><li>HouseNumberTaggingTool</li><li>geotools</li><li>opendata</li><li>FixAddresses</li><li>measurement</li><li>jaxb</li><li>SeaChart</li><li>editgpx</li><li>utilsplugin2</li><li>pdfimport</li><li>EasyPresets</li><li>terracer</li><li>wikipedia</li><li>PicLayer</li><li>log4j</li><li>imagery_offset_db</li><li>ImproveOsm</li><li>jts</li><li>DirectDownload</li><li>surveyor</li><li>ejml</li><li>reverter</li><li>FastDraw</li><li>print</li><li>photo_geotagging</li><li>ImportImagePlugin</li><li>undelete</li></ul>The plugins are not going to be loaded.</html>


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (20) of main
org.openstreetmap.josm.plugins.PluginException: An error occurred in plugin wikipedia
	at org.openstreetmap.josm.plugins.PluginProxy.handlePluginException(PluginProxy.java:60)
	at org.openstreetmap.josm.plugins.PluginProxy.mapFrameInitialized(PluginProxy.java:71)
	at org.openstreetmap.josm.gui.MainPanel.updateContent(MainPanel.java:80)
	at org.openstreetmap.josm.gui.MainPanel$1.beforeFirstLayerAdded(MainPanel.java:157)
	at org.openstreetmap.josm.gui.layer.MainLayerManager.realAddLayer(MainLayerManager.java:281)
	at org.openstreetmap.josm.gui.layer.LayerManager.lambda$addLayer$0(LayerManager.java:218)
	at org.openstreetmap.josm.gui.util.GuiHelper.runInEDTAndWaitWithException(GuiHelper.java:239)
	at org.openstreetmap.josm.gui.layer.LayerManager.addLayer(LayerManager.java:218)
	at org.openstreetmap.josm.gui.layer.LayerManager.addLayer(LayerManager.java:207)
	at org.openstreetmap.josm.actions.AddImageryLayerAction.actionPerformed(AddImageryLayerAction.java:150)
	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/com.apple.laf.ScreenMenuItem.actionPerformed(ScreenMenuItem.java:129)
	at java.desktop/java.awt.MenuItem.processActionEvent(MenuItem.java:690)
	at java.desktop/java.awt.MenuItem.processEvent(MenuItem.java:649)
	at java.desktop/java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:375)
	at java.desktop/java.awt.MenuComponent.dispatchEvent(MenuComponent.java:363)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
	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(AccessController.java:391)
	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(AccessController.java:391)
	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)
Caused by: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at org.openstreetmap.josm.plugins.PluginProxy.mapFrameInitialized(PluginProxy.java:66)
	... 35 more
Caused by: java.lang.NullPointerException
	at org.wikipedia.gui.WikipediaToggleDialog.updateTitle(WikipediaToggleDialog.java:146)
	at org.wikipedia.gui.WikipediaToggleDialog.<init>(WikipediaToggleDialog.java:88)
	at org.wikipedia.WikipediaPlugin.mapFrameInitialized(WikipediaPlugin.java:72)
	... 40 more

=== RUNNING THREADS ===
Thread: RemoteControl HTTP Server (46) of main
java.base@13.0.1/sun.nio.ch.Net.accept(Native Method)
java.base@13.0.1/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:755)
java.base@13.0.1/java.net.ServerSocket.implAccept(ServerSocket.java:662)
java.base@13.0.1/java.net.ServerSocket.platformImplAccept(ServerSocket.java:628)
java.base@13.0.1/java.net.ServerSocket.implAccept(ServerSocket.java:604)
java.base@13.0.1/java.net.ServerSocket.implAccept(ServerSocket.java:561)
java.base@13.0.1/java.net.ServerSocket.accept(ServerSocket.java:518)
app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

Thread: Finalizer (3) of system
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
java.base@13.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170)

Thread: Java2D Queue Flusher (15) of system
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.desktop@13.0.1/sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:205)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: message-notifier-0 (50) of main
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:235)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
java.base@13.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
java.base@13.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: Reference Handler (2) of system
java.base@13.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
java.base@13.0.1/java.lang.ref.Reference.processPendingReferences(Reference.java:241)
java.base@13.0.1/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213)

Thread: File Watcher (23) of main
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
java.base@13.0.1/java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:483)
java.base@13.0.1/java.util.concurrent.LinkedBlockingDeque.take(LinkedBlockingDeque.java:671)
java.base@13.0.1/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$303/0x0000000800ddbc40.run(Unknown Source)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: Timer-2 (57) of main
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.Object.wait(Object.java:326)
java.base@13.0.1/java.util.TimerThread.mainLoop(Timer.java:527)
java.base@13.0.1/java.util.TimerThread.run(Timer.java:506)

Thread: Timer-1 (47) of main
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.util.TimerThread.mainLoop(Timer.java:553)
java.base@13.0.1/java.util.TimerThread.run(Timer.java:506)

Thread: AWT-Shutdown (18) of system
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.Object.wait(Object.java:326)
java.desktop@13.0.1/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: TimerQueue (21) of system
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
java.base@13.0.1/java.util.concurrent.DelayQueue.take(DelayQueue.java:217)
java.desktop@13.0.1/javax.swing.TimerQueue.run(TimerQueue.java:171)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: RemoteControl HTTP Server (45) of main
java.base@13.0.1/sun.nio.ch.Net.accept(Native Method)
java.base@13.0.1/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:755)
java.base@13.0.1/java.net.ServerSocket.implAccept(ServerSocket.java:662)
java.base@13.0.1/java.net.ServerSocket.platformImplAccept(ServerSocket.java:628)
java.base@13.0.1/java.net.ServerSocket.implAccept(ServerSocket.java:604)
java.base@13.0.1/java.net.ServerSocket.implAccept(ServerSocket.java:561)
java.base@13.0.1/java.net.ServerSocket.accept(ServerSocket.java:518)
app//org.openstreetmap.josm.io.remotecontrol.RemoteControlHttpServer.run(RemoteControlHttpServer.java:104)

Thread: AppKit Thread (13) of system

Thread: AWT-EventQueue-0 (20) of main
Stacktrace see above.

Thread: Weak reference cleaner (24) of main
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@13.0.1/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$335/0x0000000800e47040.run(Unknown Source)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: Timer-0 (42) of main
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.util.TimerThread.mainLoop(Timer.java:553)
java.base@13.0.1/java.util.TimerThread.run(Timer.java:506)

Thread: JCS-ElementEventQueue-Thread-1 (32) of main
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
java.base@13.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: Signal Dispatcher (4) of system

Thread: Java2D Disposer (16) of system
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
java.desktop@13.0.1/sun.java2d.Disposer.run(Disposer.java:144)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: image-fetcher-0 (30) of main
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
java.base@13.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: ForkJoinPool.commonPool-worker-7 (35)
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
java.base@13.0.1/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
java.base@13.0.1/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)

Thread: DestroyJavaVM (52) of main

Thread: Map Status Collector (58) of main
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
java.base@13.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
app//org.openstreetmap.josm.gui.MapStatus$Collector.run(MapStatus.java:434)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: WeakCollectionCleaner (39) of main
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
org.geotools.util.WeakCollectionCleaner.run(WeakCollectionCleaner.java:65)

Thread: Common-Cleaner (10) of InnocuousThreadGroup
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
java.base@13.0.1/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)
java.base@13.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)

Thread: changeset-updater-0 (51) of main
java.base@13.0.1/jdk.internal.misc.Unsafe.park(Native Method)
java.base@13.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:235)
java.base@13.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
java.base@13.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
java.base@13.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
java.base@13.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
java.base@13.0.1/java.lang.Thread.run(Thread.java:830)

Thread: GT authority factory disposer (36) of main
java.base@13.0.1/java.lang.Object.wait(Native Method)
java.base@13.0.1/java.util.TimerThread.mainLoop(Timer.java:553)
java.base@13.0.1/java.util.TimerThread.run(Timer.java:506)
}}}
"	defect	new	normal		Plugin wikipedia	latest		template_report	
