mrglavas    2004/02/23 10:49:50

  Modified:    java/src/org/apache/xerces/impl
                        XMLDocumentFragmentScannerImpl.java
  Log:
  Fixing Bug #27081:

  http://nagoya.apache.org/bugzilla/show_bug.cgi?id=27081

  

  Fixing a reset bug.

  

  When the parser scans sequences of ']'

  in character data it appends them to a buffer before reporting

  them in case the section contains an illegal ']]>'. While in this

  section a boolean is set indicating that content is being

  scanned in case the current entity ends. This makes it possible

  to flush the buffer to a characters call before calling endEntity.

  

  If an exception occured in this section, this state was not being

  reset on a new parse. The buffer to scan content is also used

  to scan comments and a few other structures. While in this

  broken state the parser would report anything currently in the

  buffer as characters at the end of any general entity as well

  as the document entity.
  
  Revision  Changes    Path
  1.46      +8 -7      
xml-xerces/java/src/org/apache/xerces/impl/XMLDocumentFragmentScannerImpl.java
  
  Index: XMLDocumentFragmentScannerImpl.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xerces/java/src/org/apache/xerces/impl/XMLDocumentFragmentScannerImpl.java,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- XMLDocumentFragmentScannerImpl.java       11 Feb 2004 18:55:20 -0000      1.45
  +++ XMLDocumentFragmentScannerImpl.java       23 Feb 2004 18:49:49 -0000      1.46
  @@ -374,12 +374,13 @@
           // sax features
           fAttributes.setNamespaces(fNamespaces);
   
  -             // initialize vars
  -             fMarkupDepth = 0;
  -             fCurrentElement = null;
  -             fElementStack.clear();
  -             fHasExternalDTD = false;
  -             fStandalone = false;
  +        // initialize vars
  +        fMarkupDepth = 0;
  +        fCurrentElement = null;
  +        fElementStack.clear();
  +        fHasExternalDTD = false;
  +        fStandalone = false;
  +        fInScanContent = false;
   
                // setup dispatcher
                setScannerState(SCANNER_STATE_CONTENT);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to