Index: trunk/src/org/openstreetmap/josm/data/gpx/WayPoint.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/gpx/WayPoint.java	(revision 12198)
+++ trunk/src/org/openstreetmap/josm/data/gpx/WayPoint.java	(revision 12199)
@@ -80,5 +80,5 @@
     private double east = Double.NaN;
     private double north = Double.NaN;
-    private Object eastNorthCacheKey = null;
+    private Object eastNorthCacheKey;
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java	(revision 12198)
+++ trunk/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java	(revision 12199)
@@ -267,5 +267,5 @@
     private class WeakPreferenceAdapter extends ListenableWeakReference<ValueChangeListener<? super T>>
             implements ValueChangeListener<T> {
-        public WeakPreferenceAdapter(ValueChangeListener<? super T> referent) {
+        WeakPreferenceAdapter(ValueChangeListener<? super T> referent) {
             super(referent);
         }
@@ -273,6 +273,8 @@
         @Override
         public void valueChanged(ValueChangeEvent<? extends T> e) {
-            ValueChangeListener<? super T> r = this.get();
-            r.valueChanged(e);
+            ValueChangeListener<? super T> r = super.get();
+            if (r != null) {
+                r.valueChanged(e);
+            }
         }
 
@@ -281,5 +283,4 @@
             removeListenerImpl(new PreferenceChangedListenerAdapter(this));
         }
-
     }
 
