dbertoni    00/04/19 09:33:32

  Modified:    c/src/XPath XPathProcessorImpl.cpp
  Log:
  Fixed bug where '..' was being processed as '.'
  
  Revision  Changes    Path
  1.6       +11 -11    xml-xalan/c/src/XPath/XPathProcessorImpl.cpp
  
  Index: XPathProcessorImpl.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/XPathProcessorImpl.cpp,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- XPathProcessorImpl.cpp    2000/04/11 14:46:21     1.5
  +++ XPathProcessorImpl.cpp    2000/04/19 16:33:32     1.6
  @@ -206,8 +206,8 @@
   
   void
   XPathProcessorImpl::tokenize(
  -                     const XalanDOMString&                   pat,
  -                     std::vector<XalanDOMString>*    targetStrings)
  +                     const XalanDOMString&   pat,
  +                     DOMStringVectorType*    targetStrings)
   {
        m_expression->setCurrentPattern(pat);
   
  @@ -512,7 +512,7 @@
   
   
   void
  -XPathProcessorImpl::recordTokenString(std::vector<XalanDOMString>&   
targetStrings)
  +XPathProcessorImpl::recordTokenString(DOMStringVectorType&   targetStrings)
   {
        assert(m_expression != 0);
   
  @@ -1598,7 +1598,7 @@
        {
                m_expression->appendOpCode(XPathExpression::eOP_EXTFUNCTION);
   
  -             std::vector<XPathExpression::OpCodeMapValueType>        
theArgs(2);
  +             XPathExpression::OpCodeMapValueVectorType       theArgs(2);
   
                theArgs[0] = m_expression->getTokenPosition();
   
  @@ -1650,7 +1650,7 @@
                                assert(m_expression->getToken(thePosition) != 0 
&&
                                           
equals(m_expression->getToken(thePosition)->str(), m_token));
   
  -                             
std::vector<XPathExpression::OpCodeMapValueType>        theArgs(1, thePosition);
  +                             XPathExpression::OpCodeMapValueVectorType       
theArgs(1, thePosition);
   
                                
m_expression->appendOpCode(XPathExpression::eOP_FUNCTION,
                                                                                
   theArgs);
  @@ -1704,7 +1704,7 @@
        {
                const int       newOpPos = m_expression->opCodeMapLength();
   
  -             std::vector<XPathExpression::OpCodeMapValueType>        
theArgs(1);
  +             XPathExpression::OpCodeMapValueVectorType       theArgs(1);
   
                // Tell how long the step is without the predicate
                theArgs[0] = 4;
  @@ -1754,7 +1754,7 @@
   {
        const int       opPos = m_expression->opCodeMapLength();
   
  -     if(tokenIs('.') == true)
  +     if(tokenIs(XALAN_STATIC_UCODE_STRING(".")) == true)
        {
                nextToken();
   
  @@ -1763,7 +1763,7 @@
                        error("'..[predicate]' or '.[predicate]' is illegal 
syntax.  Use 'self::node()[predicate]' instead.");
                }
   
  -             std::vector<XPathExpression::OpCodeMapValueType>        
theArgs(1);
  +             XPathExpression::OpCodeMapValueVectorType       theArgs(1);
   
                // Tell how long the step is without the predicate
                theArgs[0] = 4;
  @@ -1777,7 +1777,7 @@
        {
                nextToken();
   
  -             std::vector<XPathExpression::OpCodeMapValueType>        
theArgs(1);
  +             XPathExpression::OpCodeMapValueVectorType       theArgs(1);
   
                // Tell how long the step is without the predicate
                theArgs[0] = 4;
  @@ -1833,7 +1833,7 @@
                // by a regular step pattern.
                // if(lookahead('@', 1) == true || lookahead("::", 2) == true)
                {
  -                     std::vector<XPathExpression::OpCodeMapValueType>        
theArgs(1);
  +                     XPathExpression::OpCodeMapValueVectorType       
theArgs(1);
   
                        // Tell how long the step is without the predicate
                        theArgs[0] = 4;
  @@ -2132,7 +2132,7 @@
        {
                const int       newOpPos = m_expression->opCodeMapLength();
   
  -             std::vector<XPathExpression::OpCodeMapValueType>        
theArgs(1);
  +             XPathExpression::OpCodeMapValueVectorType       theArgs(1);
   
                // Tell how long the step is without the predicate
                theArgs[0] = 4;
  
  
  

Reply via email to