Index: applications/editors/josm/plugins/reverter/src/reverter/MultiOsmReader.java
===================================================================
--- applications/editors/josm/plugins/reverter/src/reverter/MultiOsmReader.java	(revision 34959)
+++ applications/editors/josm/plugins/reverter/src/reverter/MultiOsmReader.java	(revision 34960)
@@ -5,11 +5,8 @@
 import java.io.InputStreamReader;
 
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
 import org.openstreetmap.josm.io.IllegalDataException;
 import org.openstreetmap.josm.io.OsmReader;
 import org.openstreetmap.josm.io.UTFInputStreamReader;
+import org.openstreetmap.josm.tools.XmlUtils;
 
 /**
@@ -19,12 +16,13 @@
 public class MultiOsmReader extends OsmReader {
 
+    /**
+     * Parse data in source and add to existing dataset.
+     * @param source the input stream with OSM data
+     * @throws IllegalDataException in case of any exception
+     */
     public void addData(InputStream source) throws IllegalDataException {
-        try {
-            InputStreamReader ir = UTFInputStreamReader.create(source, "UTF-8");
-            XMLStreamReader parser = XMLInputFactory.newInstance().createXMLStreamReader(ir);
-            setParser(parser);
+        try (InputStreamReader ir = UTFInputStreamReader.create(source)) {
+            setParser(XmlUtils.newSafeXMLInputFactory().createXMLStreamReader(ir));
             parse();
-        } catch (XMLStreamException e) {
-           throw new IllegalDataException(e);
         } catch (Exception e) {
             throw new IllegalDataException(e);
