summaryrefslogtreecommitdiffstats
path: root/lib/composer
diff options
context:
space:
mode:
authorArthur Schiwon <blizzz@arthur-schiwon.de>2018-01-04 13:16:05 +0100
committerArthur Schiwon <blizzz@arthur-schiwon.de>2018-01-04 13:16:05 +0100
commit7f0e4a5357c551fd2a1359daeaff54de11e3892d (patch)
tree0609d7d7234c657d36da8745874d9dde4d17a488 /lib/composer
parente489a1a7c8b2d8c4e0c6b2fc9f0d15d328a44ec1 (diff)
downloadnextcloud-server-7f0e4a5357c551fd2a1359daeaff54de11e3892d.tar.gz
nextcloud-server-7f0e4a5357c551fd2a1359daeaff54de11e3892d.zip
update autoloader
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Diffstat (limited to 'lib/composer')
-rw-r--r--lib/composer/composer/ClassLoader.php18
-rw-r--r--lib/composer/composer/autoload_static.php12
2 files changed, 11 insertions, 19 deletions
diff --git a/lib/composer/composer/ClassLoader.php b/lib/composer/composer/ClassLoader.php
index 2c72175e772..bebe83706f8 100644
--- a/lib/composer/composer/ClassLoader.php
+++ b/lib/composer/composer/ClassLoader.php
@@ -43,7 +43,7 @@ namespace Composer\Autoload;
class ClassLoader
{
// PSR-4
- private $prefixLengthsPsr4 = array();
+ private $firstCharsPsr4 = array();
private $prefixDirsPsr4 = array();
private $fallbackDirsPsr4 = array();
@@ -170,11 +170,10 @@ class ClassLoader
}
} elseif (!isset($this->prefixDirsPsr4[$prefix])) {
// Register directories for a new namespace.
- $length = strlen($prefix);
- if ('\\' !== $prefix[$length - 1]) {
+ if ('\\' !== substr($prefix, -1)) {
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
}
- $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
+ $this->firstCharsPsr4[$prefix[0]] = true;
$this->prefixDirsPsr4[$prefix] = (array) $paths;
} elseif ($prepend) {
// Prepend directories for an already registered namespace.
@@ -221,11 +220,10 @@ class ClassLoader
if (!$prefix) {
$this->fallbackDirsPsr4 = (array) $paths;
} else {
- $length = strlen($prefix);
- if ('\\' !== $prefix[$length - 1]) {
+ if ('\\' !== substr($prefix, -1)) {
throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator.");
}
- $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length;
+ $this->firstCharsPsr4[$prefix[0]] = true;
$this->prefixDirsPsr4[$prefix] = (array) $paths;
}
}
@@ -373,15 +371,15 @@ class ClassLoader
$logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext;
$first = $class[0];
- if (isset($this->prefixLengthsPsr4[$first])) {
+ if (isset($this->firstCharsPsr4[$first])) {
$subPath = $class;
while (false !== $lastPos = strrpos($subPath, '\\')) {
$subPath = substr($subPath, 0, $lastPos);
$search = $subPath.'\\';
if (isset($this->prefixDirsPsr4[$search])) {
+ $pathEnd = substr($logicalPathPsr4, $lastPos + 1);
foreach ($this->prefixDirsPsr4[$search] as $dir) {
- $length = $this->prefixLengthsPsr4[$first][$search];
- if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
+ if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $pathEnd)) {
return $file;
}
}
diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php
index aa5990466fc..f3d0aa0f082 100644
--- a/lib/composer/composer/autoload_static.php
+++ b/lib/composer/composer/autoload_static.php
@@ -6,14 +6,8 @@ namespace Composer\Autoload;
class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
{
- public static $prefixLengthsPsr4 = array (
- 'O' =>
- array (
- 'OC\\Settings\\' => 12,
- 'OC\\Core\\' => 8,
- 'OC\\' => 3,
- 'OCP\\' => 4,
- ),
+ public static $firstCharsPsr4 = array (
+ 'O' => true,
);
public static $prefixDirsPsr4 = array (
@@ -914,7 +908,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
public static function getInitializer(ClassLoader $loader)
{
return \Closure::bind(function () use ($loader) {
- $loader->prefixLengthsPsr4 = ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c::$prefixLengthsPsr4;
+ $loader->firstCharsPsr4 = ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c::$firstCharsPsr4;
$loader->prefixDirsPsr4 = ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c::$prefixDirsPsr4;
$loader->classMap = ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c::$classMap;