Author: kkrugler
Date: Tue Dec 24 15:52:08 2013
New Revision: 1553292

URL: http://svn.apache.org/r1553292
Log:
JIRA-1211: OpenDocument (ODF) parser produces multiple startDocument() events

Modified:
    
tika/trunk/tika-core/src/main/java/org/apache/tika/sax/XHTMLContentHandler.java

Modified: 
tika/trunk/tika-core/src/main/java/org/apache/tika/sax/XHTMLContentHandler.java
URL: 
http://svn.apache.org/viewvc/tika/trunk/tika-core/src/main/java/org/apache/tika/sax/XHTMLContentHandler.java?rev=1553292&r1=1553291&r2=1553292&view=diff
==============================================================================
--- 
tika/trunk/tika-core/src/main/java/org/apache/tika/sax/XHTMLContentHandler.java 
(original)
+++ 
tika/trunk/tika-core/src/main/java/org/apache/tika/sax/XHTMLContentHandler.java 
Tue Dec 24 15:52:08 2013
@@ -90,6 +90,11 @@ public class XHTMLContentHandler extends
     private final Metadata metadata;
 
     /**
+     * Flag to indicate whether the document has been started.
+     */
+    private boolean documentStarted = false;
+    
+    /**
      * Flags to indicate whether the document head element has been 
started/ended.
      */
     private boolean headStarted = false;
@@ -102,14 +107,18 @@ public class XHTMLContentHandler extends
     }
 
     /**
-     * Starts an XHTML document by setting up the namespace mappings.
+     * Starts an XHTML document by setting up the namespace mappings 
+     * when called for the first time.
      * The standard XHTML prefix is generated lazily when the first
      * element is started.
      */
     @Override
     public void startDocument() throws SAXException {
-        super.startDocument();
-        startPrefixMapping("", XHTML);
+       if(!documentStarted){
+               documentStarted = true;
+            super.startDocument();
+            startPrefixMapping("", XHTML);
+       }
     }
 
     /**


Reply via email to