diff -r 2251fb41dbc7 -r 1e110b03ae96 web/lib/Zend/Loader/PluginLoader.php --- a/web/lib/Zend/Loader/PluginLoader.php Sun Apr 21 10:07:03 2013 +0200 +++ b/web/lib/Zend/Loader/PluginLoader.php Sun Apr 21 21:54:24 2013 +0200 @@ -15,9 +15,9 @@ * @category Zend * @package Zend_Loader * @subpackage PluginLoader - * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License - * @version $Id: PluginLoader.php 22603 2010-07-17 00:02:10Z ramon $ + * @version $Id: PluginLoader.php 24877 2012-06-04 14:04:53Z adamlundrigan $ */ /** Zend_Loader_PluginLoader_Interface */ @@ -32,7 +32,7 @@ * @category Zend * @package Zend_Loader * @subpackage PluginLoader - * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ class Zend_Loader_PluginLoader implements Zend_Loader_PluginLoader_Interface @@ -127,12 +127,8 @@ return $prefix; } - $last = strlen($prefix) - 1; - if ($prefix{$last} == '\\') { - return $prefix; - } - - return rtrim($prefix, '_') . '_'; + $nsSeparator = (false !== strpos($prefix, '\\'))?'\\':'_'; + return rtrim($prefix, $nsSeparator) . $nsSeparator; } /** @@ -372,7 +368,11 @@ $registry = array_reverse($registry, true); $found = false; - $classFile = str_replace('_', DIRECTORY_SEPARATOR, $name) . '.php'; + if (false !== strpos($name, '\\')) { + $classFile = str_replace('\\', DIRECTORY_SEPARATOR, $name) . '.php'; + } else { + $classFile = str_replace('_', DIRECTORY_SEPARATOR, $name) . '.php'; + } $incFile = self::getIncludeFileCache(); foreach ($registry as $prefix => $paths) { $className = $prefix . $name;