knoaman 2002/12/04 10:21:23 Modified: c/src/xercesc/validators/schema/identity XercesXPath.cpp Log: Identity constraint fix. Revision Changes Path 1.4 +21 -4 xml-xerces/c/src/xercesc/validators/schema/identity/XercesXPath.cpp Index: XercesXPath.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/validators/schema/identity/XercesXPath.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- XercesXPath.cpp 4 Nov 2002 14:47:42 -0000 1.3 +++ XercesXPath.cpp 4 Dec 2002 18:21:23 -0000 1.4 @@ -56,6 +56,9 @@ /* * $Log$ + * Revision 1.4 2002/12/04 18:21:23 knoaman + * Identity constraint fix. + * * Revision 1.3 2002/11/04 14:47:42 tng * C++ Namespace Support. * @@ -750,13 +753,27 @@ addToken(tokens, XercesXPath::EXPRTOKEN_PERIOD); starIsMultiplyOperator = true; currentOffset++; - } else { // '.' + } else if (ch == chPipe) { // '|' + addToken(tokens, XercesXPath::EXPRTOKEN_PERIOD); + starIsMultiplyOperator = true; + currentOffset++; + } else if (XMLReader::isWhitespace(ch)) { + do { + if (++currentOffset == endOffset) + break; + + ch = data[currentOffset]; + } while (XMLReader::isWhitespace(ch)); + + if (currentOffset == endOffset || ch == chPipe) { + addToken(tokens, XercesXPath::EXPRTOKEN_PERIOD); + starIsMultiplyOperator = true; + break; + } + } else { ThrowXML(XPathException, XMLExcepts::XPath_InvalidChar); } - if (currentOffset == endOffset) { - break; - } break; case CHARTYPE_ATSIGN: // '@' addToken(tokens, XercesXPath::EXPRTOKEN_ATSIGN);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]