diff --git a/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java b/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java index a97e408e..76775e30 100644 --- a/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java +++ b/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java @@ -116,17 +116,7 @@ private static XMLReader createXmlReader() throws SAXException { return comSunXmlReader; } - String key = "org.xml.sax.driver"; - String oldParser = System.getProperty(key); - System.clearProperty(key); // There's a "slight" problem with this an parallel maven: It does not work ;) - - try { - return org.xml.sax.helpers.XMLReaderFactory.createXMLReader(); - } finally { - if (oldParser != null) { - System.setProperty(key, oldParser); - } - } + return org.xml.sax.helpers.XMLReaderFactory.createXMLReader(); } private static XMLReader instantiate(String s) { diff --git a/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java b/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java index ec8ed461..d7d477db 100644 --- a/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java +++ b/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java @@ -79,6 +79,14 @@ public void trimming() { assertEquals(" preserve space ", dom.getChild("element6").getValue()); } + @Test + public void buildDoesNotModifySaxDriverProperty() { + String key = "org.xml.sax.driver"; + String original = System.getProperty(key); + Xpp3DomBuilder.build(new StringReader("")); + assertEquals(original, System.getProperty(key)); + } + @Test public void testMalformedXml() { try {