changeset 569:9e8637631089

Fix stStrChop() and stStrChopPad() UTF-8 handling.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 16 May 2014 19:12:10 +0300
parents 4024f663a8e7
children 27c64c5ad1a8
files msitegen.inc.php
diffstat 1 files changed, 6 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/msitegen.inc.php	Tue May 06 16:26:48 2014 +0300
+++ b/msitegen.inc.php	Fri May 16 19:12:10 2014 +0300
@@ -644,13 +644,16 @@
 
 function stStrChop($str, $len)
 {
-  return (strlen($str) > $len) ? substr($str, 0, $len - 3)."..." : $str;
+  return (mb_strlen($str) > $len) ? mb_substr($str, 0, $len - 3)."..." : $str;
 }
 
 
 function stStrChopPad($str, $len)
 {
-  return sprintf("%-".$len."s", stStrChop($str, $len));
+  $tmp = stStrChop($str, $len);
+  for ($i = mb_strlen($tmp); $i < $len; $i++)
+    $tmp .= " ";
+  return $tmp;
 }
 
 
@@ -792,9 +795,7 @@
 {
   $localeInited = TRUE;
 
-  if (!isset($pageCharset))
-    $pageCharset = "UTF-8";
-
+  $pageCharset = "UTF-8";
   mb_internal_encoding($pageCharset);
 
   $tmp = "en_US.".strtolower(str_replace("-", "", $pageCharset));