mirror of
https://github.com/composer/composer
synced 2025-05-10 00:53:06 +00:00
[Autoload] remove closures because of a bug in APC
https://bugs.php.net/bug.php?id=52144 https://bugs.php.net/bug.php?id=61576
This commit is contained in:
parent
98743ba95b
commit
963fedc9a5
4 changed files with 147 additions and 98 deletions
|
@ -5,24 +5,32 @@ if (!class_exists('Composer\\Autoload\\ClassLoader', false)) {
|
|||
require __DIR__ . '/composer' . '/ClassLoader.php';
|
||||
}
|
||||
|
||||
return call_user_func(function() {
|
||||
$loader = new \Composer\Autoload\ClassLoader();
|
||||
$composerDir = __DIR__ . '/composer';
|
||||
if (!class_exists('ComposerAutoloaderInitFilesAutoload', false)) {
|
||||
class ComposerAutoloaderInitFilesAutoload
|
||||
{
|
||||
public static function getLoader()
|
||||
{
|
||||
$loader = new \Composer\Autoload\ClassLoader();
|
||||
$composerDir = __DIR__ . '/composer';
|
||||
|
||||
$map = require $composerDir . '/autoload_namespaces.php';
|
||||
foreach ($map as $namespace => $path) {
|
||||
$loader->add($namespace, $path);
|
||||
$map = require $composerDir . '/autoload_namespaces.php';
|
||||
foreach ($map as $namespace => $path) {
|
||||
$loader->add($namespace, $path);
|
||||
}
|
||||
|
||||
$classMap = require $composerDir . '/autoload_classmap.php';
|
||||
if ($classMap) {
|
||||
$loader->addClassMap($classMap);
|
||||
}
|
||||
|
||||
$loader->register();
|
||||
|
||||
require $vendorDir . '/a/a/test.php';
|
||||
require $vendorDir . '/b/b/test2.php';
|
||||
|
||||
return $loader;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$classMap = require $composerDir . '/autoload_classmap.php';
|
||||
if ($classMap) {
|
||||
$loader->addClassMap($classMap);
|
||||
}
|
||||
|
||||
$loader->register();
|
||||
|
||||
require $vendorDir . '/a/a/test.php';
|
||||
require $vendorDir . '/b/b/test2.php';
|
||||
|
||||
return $loader;
|
||||
});
|
||||
return ComposerAutoloaderInitFilesAutoload::getLoader();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue