Index: /trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 12027)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 12028)
@@ -1804,5 +1804,5 @@
 
     @Override
-    public void destroy() {
+    public synchronized void destroy() {
         super.destroy();
         adjustAction.destroy();
Index: /trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java	(revision 12027)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java	(revision 12028)
@@ -389,5 +389,5 @@
 
     @Override
-    public void destroy() {
+    public synchronized void destroy() {
         super.destroy();
         SystemOfMeasurement.removeSoMChangeListener(drawHelper);
Index: /trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 12027)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 12028)
@@ -943,5 +943,5 @@
 
     @Override
-    public void destroy() {
+    public synchronized void destroy() {
         super.destroy();
         DataSet.removeSelectionListener(this);
Index: /trunk/src/org/openstreetmap/josm/gui/layer/ValidatorLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/ValidatorLayer.java	(revision 12027)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/ValidatorLayer.java	(revision 12028)
@@ -172,5 +172,5 @@
 
     @Override
-    public void destroy() {
+    public synchronized void destroy() {
         Main.map.validatorDialog.tree.removeInvalidationListener(invalidator);
         Main.getLayerManager().removeLayerChangeListener(this);
