aports/main/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch
2014-09-15 09:08:05 +00:00

39 lines
1.0 KiB
Diff

From b082cf1742b2310d69b2f278f33f6025e2544acb Mon Sep 17 00:00:00 2001
From: Mohamad Elrashidin Bin Sajeli <archayl@gmail.com>
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
+ );
}
}