Index: /trunk/src/org/openstreetmap/josm/io/OverpassDownloadReader.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/OverpassDownloadReader.java	(revision 13335)
+++ /trunk/src/org/openstreetmap/josm/io/OverpassDownloadReader.java	(revision 13336)
@@ -402,5 +402,7 @@
      */
     public static String fixQuery(String query) {
-        return query.replaceFirst("out( body| skel| ids)?( id| qt)?;", "out meta$2;");
+        return query == null ? query : query
+                .replaceFirst("out( body| skel| ids)?( id| qt)?;", "out meta$2;")
+                .replaceFirst("(?s)\\[out:(json|csv)[^\\]]*\\]", "[out:xml]");
     }
 }
Index: /trunk/test/unit/org/openstreetmap/josm/io/OverpassDownloadReaderTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/io/OverpassDownloadReaderTest.java	(revision 13335)
+++ /trunk/test/unit/org/openstreetmap/josm/io/OverpassDownloadReaderTest.java	(revision 13336)
@@ -8,4 +8,5 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
@@ -181,4 +182,6 @@
     @Test
     public void testFixQuery() {
+        assertNull(OverpassDownloadReader.fixQuery(null));
+
         assertEquals("out meta;", OverpassDownloadReader.fixQuery("out;"));
         assertEquals("out meta;", OverpassDownloadReader.fixQuery("out body;"));
@@ -196,5 +199,10 @@
         assertEquals("out meta qt;", OverpassDownloadReader.fixQuery("out ids qt;"));
 
-        assertEquals("[timeout:25];\n" +
+        assertEquals("[out:xml]", OverpassDownloadReader.fixQuery("[out:json]"));
+        assertEquals("[out:xml]", OverpassDownloadReader.fixQuery("[out:csv(\n" +
+                "    ::\"id\", amenity, name, operator, opening_hours, \"contact:website\", \"contact:phone\", brand, dispensing, lastcheck\n" +
+                "  )]"));
+
+        assertEquals("[out:xml][timeout:25];\n" +
                 "(\n" +
                 "  node[\"historic\"=\"ringfort\"];\n" +
@@ -202,5 +210,5 @@
                 ");\n" +
                 "out meta;",
-            OverpassDownloadReader.fixQuery("[timeout:25];\n" +
+            OverpassDownloadReader.fixQuery("[out:xml][timeout:25];\n" +
                 "(\n" +
                 "  node[\"historic\"=\"ringfort\"];\n" +
