diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index af8ba5f..ebf2865 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -2066,8 +2066,11 @@
                 // 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 ) {
