X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=functions%2Fencode%2Fkoi8_r.php;h=c498ca9674e1aaab4d50512541c1166af8a673b0;hb=f197ec8835b64975ff47dc6cd86dae75605baebf;hp=bdd209eda11ee074a87771a04874ffc8ff3465cb;hpb=e2dd8640930e6c67e889006556661aeb15c7176c;p=squirrelmail.git diff --git a/functions/encode/koi8_r.php b/functions/encode/koi8_r.php index bdd209ed..c498ca96 100644 --- a/functions/encode/koi8_r.php +++ b/functions/encode/koi8_r.php @@ -6,7 +6,7 @@ * takes a string of unicode entities and converts it to a koi8-r encoded string * Unsupported characters are replaced with ?. * - * @copyright 2004-2012 The SquirrelMail Project Team + * @copyright 2004-2016 The SquirrelMail Project Team * @license http://opensource.org/licenses/gpl-license.php GNU Public License * @version $Id$ * @package squirrelmail @@ -22,7 +22,7 @@ function charset_encode_koi8_r ($string) { // don't run encoding function, if there is no encoded characters if (! preg_match("'&#[0-9]+;'",$string) ) return $string; - $string=preg_replace("/&#([0-9]+);/e","unicodetokoi8r('\\1')",$string); + $string=preg_replace_callback("/&#([0-9]+);/",'unicodetokoi8r',$string); return $string; } @@ -35,10 +35,11 @@ function charset_encode_koi8_r ($string) { * Don't use it or make sure, that functions/encode/koi8_r.php is * included. * - * @param int $var decimal unicode value + * @param array $matches array with first element a decimal unicode value * @return string koi8-r character */ -function unicodetokoi8r($var) { +function unicodetokoi8r($matches) { + $var = $matches[1]; $koi8rchars=array('160' => "\x9A", '169' => "\xBF",