peiyongz    2004/08/17 14:09:04

  Modified:    c/src/xercesc/util XMLBigInteger.hpp XMLBigInteger.cpp
  Log:
  canRep for nonPositivieInteger
  
  Revision  Changes    Path
  1.14      +2 -1      xml-xerces/c/src/xercesc/util/XMLBigInteger.hpp
  
  Index: XMLBigInteger.hpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/XMLBigInteger.hpp,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- XMLBigInteger.hpp 11 Aug 2004 16:48:24 -0000      1.13
  +++ XMLBigInteger.hpp 17 Aug 2004 21:09:04 -0000      1.14
  @@ -96,6 +96,7 @@
                           (
                             const XMLCh*         const rawData
                           ,       MemoryManager* const memMgr = 
XMLPlatformUtils::fgMemoryManager
  +                        ,       bool                 isNonPositiveInteger = false
                           );
   
       static void parseBigInteger(const XMLCh* const toConvert
  
  
  
  1.12      +17 -4     xml-xerces/c/src/xercesc/util/XMLBigInteger.cpp
  
  Index: XMLBigInteger.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/XMLBigInteger.cpp,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- XMLBigInteger.cpp 11 Aug 2004 16:48:24 -0000      1.11
  +++ XMLBigInteger.cpp 17 Aug 2004 21:09:04 -0000      1.12
  @@ -56,6 +56,9 @@
   
   /*
    * $Log$
  + * Revision 1.12  2004/08/17 21:09:04  peiyongz
  + * canRep for nonPositivieInteger
  + *
    * Revision 1.11  2004/08/11 16:48:24  peiyongz
    * String version compareValue
    *
  @@ -126,19 +129,29 @@
   XERCES_CPP_NAMESPACE_BEGIN
   
   XMLCh* XMLBigInteger::getCanonicalRepresentation(const XMLCh*         const rawData
  -                                               ,       MemoryManager* const memMgr)
  +                                               ,       MemoryManager* const memMgr
  +                                               ,       bool                 
isNonPositiveInteger)
   {
       try 
       {
  -        XMLCh* retBuf = (XMLCh*) memMgr->allocate( (XMLString::stringLen(rawData) + 
1) * sizeof(XMLCh));
  +        XMLCh* retBuf = (XMLCh*) memMgr->allocate( (XMLString::stringLen(rawData) + 
2) * sizeof(XMLCh));
           int    sign = 0;
   
           XMLBigInteger::parseBigInteger(rawData, retBuf, sign);
   
           if (sign == 0)
           {
  -            retBuf[0] = chDigit_0;
  -            retBuf[1] = chNull;
  +            if (isNonPositiveInteger)
  +            {
  +                retBuf[0] = chDash;
  +                retBuf[1] = chDigit_0;
  +                retBuf[2] = chNull;
  +            }
  +            else
  +            {
  +                retBuf[0] = chDigit_0;
  +                retBuf[1] = chNull;
  +            }
           }
           else if (sign == -1)
           {
  
  
  

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

Reply via email to