auriemma    00/11/07 05:30:19

  Modified:    c/src/XPath FunctionTranslate.cpp
  Log:
  Merged string class changes from hpp to cpp.
  
  Revision  Changes    Path
  1.2       +15 -5     xml-xalan/c/src/XPath/FunctionTranslate.cpp
  
  Index: FunctionTranslate.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XPath/FunctionTranslate.cpp,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- FunctionTranslate.cpp     2000/11/06 19:49:15     1.1
  +++ FunctionTranslate.cpp     2000/11/07 13:30:17     1.2
  @@ -88,13 +88,15 @@
        const unsigned int              theSecondStringLength = 
length(theSecondString);
        const unsigned int              theThirdStringLength = 
length(theThirdString);
   
  -#if !defined(XALAN_NO_NAMESPACES)
  -     using std::vector;
  +#if defined(XALAN_NO_NAMESPACES)
  +     typedef vector<XalanDOMChar>            VectorType;
  +#else
  +     typedef std::vector<XalanDOMChar>       VectorType;
   #endif
   
        // A vector to contain the new characters.  We'll use it to construct
        // the result string.
  -     vector<XalanDOMChar>    theBuffer;
  +     VectorType      theBuffer;
   
        // The result string can only be as large as the first string, so
        // just reserve the space now.  Also reserve space for the
  @@ -129,8 +131,16 @@
                }
        }
   
  -     return executionContext.getXObjectFactory().createString(
  -             XalanDOMString(theBuffer.begin(), theBuffer.size()));
  +     const VectorType::size_type             theSize = theBuffer.size();     
  +     
  +     if (theSize == 0)
  +     {
  +             return 
executionContext.getXObjectFactory().createString(XalanDOMString());
  +     }
  +     else
  +     {
  +             return 
executionContext.getXObjectFactory().createString(XalanDOMString(theBuffer.begin(),
 theSize));
  +     }
   }
   
   
  
  
  

Reply via email to