You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by le...@locus.apache.org on 2000/05/05 22:29:42 UTC

cvs commit: xml-xerces/java/src/org/apache/xerces/readers StringReader.java

lehors      00/05/05 13:29:42

  Modified:    java/src/org/apache/xerces/readers StringReader.java
  Log:
  added support for QNames
  
  Revision  Changes    Path
  1.4       +5 -2      xml-xerces/java/src/org/apache/xerces/readers/StringReader.java
  
  Index: StringReader.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/readers/StringReader.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringReader.java	2000/04/04 21:14:24	1.3
  +++ StringReader.java	2000/05/05 20:29:41	1.4
  @@ -79,7 +79,7 @@
    * free list and reuse those instances to process other
    * strings.
    *
  - * @version $Id: StringReader.java,v 1.3 2000/04/04 21:14:24 andyc Exp $
  + * @version $Id: StringReader.java,v 1.4 2000/05/05 20:29:41 lehors Exp $
    */
   final class StringReader extends XMLEntityReader {
       /**
  @@ -650,7 +650,6 @@
       //
       //
       public int scanQName(char fastcheck) throws Exception {
  -        // DEFECT !! no code for namespace support
           int ch = fMostRecentChar;
           if (ch == -1) {
               return changeReaders().scanQName(fastcheck);
  @@ -672,6 +671,10 @@
                   break;
           }
           int nameIndex = fStringPool.addSymbol(fData.substring(nameOffset, fCurrentOffset));
  +        int index = fData.indexOf(':', nameOffset);
  +        int prefixIndex = index == -1 ? -1 : fStringPool.addSymbol(fData.substring(nameOffset, index));
  +        int localpartIndex = index == -1 ? nameIndex : fStringPool.addSymbol(fData.substring(index, fCurrentOffset));
  +        nameIndex = fStringPool.addQName(nameIndex, prefixIndex, localpartIndex);
           return nameIndex;
       }
       //