cargilld 2005/02/23 07:57:49 Modified: c/src/xercesc/util/Transcoders/Uniconv390 XMLUTF8Transcoder390.cpp Log: Copy performance change made to XMLUTF8Transcoder.cpp to the 390 version. Revision Changes Path 1.6 +15 -3 xml-xerces/c/src/xercesc/util/Transcoders/Uniconv390/XMLUTF8Transcoder390.cpp Index: XMLUTF8Transcoder390.cpp =================================================================== RCS file: /home/cvs/xml-xerces/c/src/xercesc/util/Transcoders/Uniconv390/XMLUTF8Transcoder390.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- XMLUTF8Transcoder390.cpp 8 Sep 2004 13:56:46 -0000 1.5 +++ XMLUTF8Transcoder390.cpp 23 Feb 2005 15:57:48 -0000 1.6 @@ -16,6 +16,9 @@ /* * $Log$ + * Revision 1.6 2005/02/23 15:57:48 cargilld + * Copy performance change made to XMLUTF8Transcoder.cpp to the 390 version. + * * Revision 1.5 2004/09/08 13:56:46 peiyongz * Apache License Version 2.0 * @@ -226,9 +229,18 @@ if (*srcPtr <= 127) { - *outPtr++ = XMLCh(*srcPtr++); - *sizePtr++ = 1; - continue; + // Handle ASCII in groups instead of single character at a time. + const XMLByte* srcPtr_save = srcPtr; + do + { + *outPtr++ = XMLCh(*srcPtr++); + } while (*srcPtr <= 127 && + srcPtr != srcEnd && + outPtr != outEnd ); + memset(sizePtr,1,srcPtr - srcPtr_save); + sizePtr += srcPtr - srcPtr_save; + if (srcPtr == srcEnd || outPtr == outEnd) + break; } // See how many trailing src bytes this sequence is going to require
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]