Index: /trunk/src/org/openstreetmap/josm/Main.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/Main.java	(revision 13325)
+++ /trunk/src/org/openstreetmap/josm/Main.java	(revision 13326)
@@ -415,5 +415,5 @@
                 || (newValue != null && oldValue != null && !Objects.equals(newValue.toCode(), oldValue.toCode()))) {
             listeners.removeIf(x -> x.get() == null);
-            listeners.forEach(x -> x.get().projectionChanged(oldValue, newValue));
+            listeners.stream().map(WeakReference::get).filter(Objects::nonNull).forEach(x -> x.projectionChanged(oldValue, newValue));
             if (newValue != null && oldBounds != null && main != null) {
                 main.restoreOldBounds(oldBounds);
