Index: /trunk/src/org/openstreetmap/josm/actions/MergeLayerAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/MergeLayerAction.java	(revision 11710)
+++ /trunk/src/org/openstreetmap/josm/actions/MergeLayerAction.java	(revision 11711)
@@ -101,6 +101,11 @@
                     setEnabled(false);
                 } else {
-                    final List<Layer> possibleMergeTargets = LayerListDialog.getInstance().getModel().getPossibleMergeTargets(sourceLayer);
-                    setEnabled(!possibleMergeTargets.isEmpty());
+                    try {
+                        setEnabled(!LayerListDialog.getInstance().getModel().getPossibleMergeTargets(sourceLayer).isEmpty());
+                    } catch (IllegalStateException e) {
+                        // May occur when destroying last layer / exiting JOSM, see #14476
+                        setEnabled(false);
+                        Main.error(e);
+                    }
                 }
         });
