aboutsummaryrefslogtreecommitdiffstats
path: root/community/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch')
-rw-r--r--community/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/community/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch b/community/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch
new file mode 100644
index 0000000000..d2fa12a477
--- /dev/null
+++ b/community/phpldapadmin/phpldapadmin-1.2.3_changed-preg_replace-to-preg_replace-callback.patch
@@ -0,0 +1,38 @@
+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
++ );
+ }
+ }
+