Public bug reported:

* phpldapadmin 1.2.2-5.2ubuntu2

lib/functions.php:2544 function dn_unescape($dn) use wrong arguments in
preg_replace_callback()

function dn_unescape($dn) {
        if (DEBUG_ENABLED && (($fargs=func_get_args())||$fargs='NOARGS'))
                debug_log('Entered 
(%%)',1,0,__FILE__,__LINE__,__METHOD__,$fargs);

        if (is_array($dn)) {
                $a = array();

                foreach ($dn as $key => $rdn) {
                        $a[$key] = 
preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',
                                function ($m) {
-                                        return ''.chr(hexdec('\\1')).'';
+                                        return ''.chr(hexdec($m[0])).'';
                                },
                                $rdn
                        );
                }

                return $a;

        } else {
                 return  preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',
                         function ($m) {
-                                return ''.chr(hexdec('\\1')).'';
+                                return ''.chr(hexdec($m[0])).'';
                        },
                        $dn
                );
        }
}

** Affects: phpldapadmin (Ubuntu)
     Importance: Undecided
         Status: New

** Description changed:

  * phpldapadmin 1.2.2-5.2ubuntu2
  
  lib/functions.php:2544 function dn_unescape($dn) use wrong arguments in
  preg_replace_callback()
  
  function dn_unescape($dn) {
-         if (DEBUG_ENABLED && (($fargs=func_get_args())||$fargs='NOARGS'))
-                 debug_log('Entered 
(%%)',1,0,__FILE__,__LINE__,__METHOD__,$fargs);
+         if (DEBUG_ENABLED && (($fargs=func_get_args())||$fargs='NOARGS'))
+                 debug_log('Entered 
(%%)',1,0,__FILE__,__LINE__,__METHOD__,$fargs);
  
-         if (is_array($dn)) {
-                 $a = array();
+         if (is_array($dn)) {
+                 $a = array();
  
-                 foreach ($dn as $key => $rdn) {
-                         $a[$key] = 
preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',
-                                 function ($m) {
+                 foreach ($dn as $key => $rdn) {
+                         $a[$key] = 
preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',
+                                 function ($m) {
  -                                        return ''.chr(hexdec('\\1')).'';
  +                                        return ''.chr(hexdec($m[0])).'';
-                                 },
-                                 $rdn
-                         );
-                 }
+                                 },
+                                 $rdn
+                         );
+                 }
  
-                 return $a;
+                 return $a;
  
-         } else {
-                  return  preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',
-                          function ($m) {
+         } else {
+                  return  preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',
+                          function ($m) {
  -                                return ''.chr(hexdec('\\1')).'';
- -                                return ''.chr(hexdec($m[0])).'';
-                         },
-                         $dn
-                 );
-         }
+ +                                return ''.chr(hexdec($m[0])).'';
+                         },
+                         $dn
+                 );
+         }
  }

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1572012

Title:
  DN with non-ASCII chracters displayed incorrect in tree

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/phpldapadmin/+bug/1572012/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to