Print entire substring instead of each character

This commit is contained in:
Dmitry-Me 2015-03-30 08:11:18 +03:00
parent 28c7c8c14f
commit d95172ba47
1 changed files with 5 additions and 2 deletions

View File

@ -2066,8 +2066,11 @@ void XMLPrinter::PrintString( const char* p, bool restricted )
// entity, and keep looking.
if ( flag[(unsigned char)(*q)] ) {
while ( p < q ) {
Print( "%c", *p );
++p;
const size_t delta = q - p;
// %.*s accepts type int as "precision"
const int toPrint = ( INT_MAX < delta ) ? INT_MAX : delta;
Print( "%.*s", toPrint, p );
p += toPrint;
}
for( int i=0; i<NUM_ENTITIES; ++i ) {
if ( entities[i].value == *q ) {