From b082cf1742b2310d69b2f278f33f6025e2544acb Mon Sep 17 00:00:00 2001 From: Mohamad Elrashidin Bin Sajeli Date: Thu, 8 May 2014 20:40:57 +0800 Subject: [PATCH] Changed preg_replace to preg_replace callback --- lib/functions.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/functions.php b/lib/functions.php index ad9ee9f..d31e0c1 100644 --- a/lib/functions.php +++ b/lib/functions.php @@ -2565,12 +2565,22 @@ function dn_unescape($dn) { $a = array(); foreach ($dn as $key => $rdn) - $a[$key] = preg_replace('/\\\([0-9A-Fa-f]{2})/e',"''.chr(hexdec('\\1')).''",$rdn); + $a[$key] = preg_replace_callback('/\\\([0-9A-Fa-f]{2})/', + function ($r) { + return "''.chr(hexdec('$r[1]')).''"; + }, + $rdn + ); return $a; } else { - return preg_replace('/\\\([0-9A-Fa-f]{2})/e',"''.chr(hexdec('\\1')).''",$dn); + return preg_replace_callback('/\\\([0-9A-Fa-f]{2})/', + function ($r) { + return "''.chr(hexdec('$r[1]')).''"; + }, + $dn + ); } }