aboutsummaryrefslogtreecommitdiffstats
path: root/includes/normal/UtfNormal.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/normal/UtfNormal.php')
-rw-r--r--includes/normal/UtfNormal.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/includes/normal/UtfNormal.php b/includes/normal/UtfNormal.php
index 08bc17bc17fb..0737823ee12f 100644
--- a/includes/normal/UtfNormal.php
+++ b/includes/normal/UtfNormal.php
@@ -346,7 +346,15 @@ class UtfNormal {
}
if( $n < 0x80 ) {
# Friendly ASCII chars.
+ # We can speed things up a bit for latin-based scripts
+ # where they tend to come in groups:
$out .= $c;
+ $i++;
+ while( $i < $len && ( $c = $string{$i} ) < "\x80" ) {
+ $out .= $c;
+ $i++;
+ }
+ $i--;
} elseif( $n < 0xc0 ) {
# illegal tail bytes or head byte of overlong sequence
if( $head == 0 ) {