﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
13789	livegps: PreferenceChangedListenerAdapter was already registered	anonymous	framm	"==== What steps will reproduce the problem?
1. 
2. 
3. 

==== What is the expected result?

==== What happens instead?

==== 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-09-06 00:16:07 +0200 (Tue, 06 Sep 2016)
Build-Date:2016-09-05 22:21:00
Revision:10966
Relative:URL: ^/trunk

Identification: JOSM/1.5 (10966 en) Linux Ubuntu 14.04.5 LTS
Memory Usage: 312 MB / 855 MB (251 MB allocated, but free)
Java version: 1.8.0_91-8u91-b14-0ubuntu4~14.04-b14, Oracle Corporation, OpenJDK 64-Bit Server VM
Screen: :0.0 1280x800
Maximum Screen Size: 1280x800
Java package: openjdk-8-jre:amd64-8u91-b14-0ubuntu4~14.04
Java ATK Wrapper package: libatk-wrapper-java:all-0.30.4-4
VM arguments: [-Djosm.restart=true, -Djava.net.useSystemProxies=true]

Plugins:
+ SeaChart (32995)
+ SeaMapEditor (32767)
+ livegps (32954)
+ surveyor (32796)


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (17) of main
java.lang.ExceptionInInitializerError
	at livegps.LiveGpsPlugin.enableTracking(LiveGpsPlugin.java:173)
	at livegps.LiveGpsPlugin$CaptureAction.actionPerformed(LiveGpsPlugin.java:55)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.JToggleButton$ToggleButtonModel.setPressed(JToggleButton.java:308)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
	at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
	at java.awt.Component.processMouseEvent(Component.java:6535)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6300)
	at java.awt.Container.processEvent(Container.java:2236)
	at java.awt.Component.dispatchEventImpl(Component.java:4891)
	at java.awt.Container.dispatchEventImpl(Container.java:2294)
	at java.awt.Component.dispatchEvent(Component.java:4713)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
	at java.awt.Container.dispatchEventImpl(Container.java:2280)
	at java.awt.Window.dispatchEventImpl(Window.java:2750)
	at java.awt.Component.dispatchEvent(Component.java:4713)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.awt.EventQueue$4.run(EventQueue.java:729)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.IllegalArgumentException: Listener PreferenceChangedListenerAdapter [listener=org.openstreetmap.josm.data.preferences.CachingProperty@aa100a21] (instance of org.openstreetmap.josm.data.preferences.AbstractProperty$PreferenceChangedListenerAdapter) was already registered.
	at org.openstreetmap.josm.tools.ListenerList.failAdd(ListenerList.java:108)
	at org.openstreetmap.josm.tools.ListenerList.ensureNotInList(ListenerList.java:102)
	at org.openstreetmap.josm.tools.ListenerList.addWeakListener(ListenerList.java:82)
	at org.openstreetmap.josm.data.Preferences.addWeakKeyPreferenceChangeListener(Preferences.java:258)
	at org.openstreetmap.josm.data.preferences.AbstractProperty.addWeakListenerImpl(AbstractProperty.java:249)
	at org.openstreetmap.josm.data.preferences.AbstractProperty.addWeakListener(AbstractProperty.java:245)
	at org.openstreetmap.josm.data.preferences.CachingProperty.<init>(CachingProperty.java:27)
	at org.openstreetmap.josm.data.preferences.AbstractToStringProperty.cached(AbstractToStringProperty.java:159)
	at livegps.LiveGpsLayer.<clinit>(LiveGpsLayer.java:34)
	... 41 more
}}}
"	defect	closed	major		Plugin livegps		fixed	template_report gsoc-core regression	rhardy702@… mark@… michael2402 dr.kludge.gm@…
