diff --git a/src/org/openstreetmap/josm/actions/SaveActionBase.java b/src/org/openstreetmap/josm/actions/SaveActionBase.java
index 9e6035f..e52138b 100644
--- a/src/org/openstreetmap/josm/actions/SaveActionBase.java
+++ b/src/org/openstreetmap/josm/actions/SaveActionBase.java
@@ -197,7 +197,7 @@ public abstract class SaveActionBase extends DiskAccessAction {
             }
             // No filefilter accepts current filename, add default extension
             String fn = file.getPath();
-            if (extension != null) {
+            if (extension != null && ff.accept(new File(fn + '.' + extension))) {
                 fn += '.' + extension;
             } else if (ff instanceof ExtensionFileFilter) {
                 fn += '.' + ((ExtensionFileFilter) ff).getDefaultExtension();
