[ErrorHandler] Remove Symfony ClassLoader support in an error enhancer

This commit is contained in:
Thomas Calvet 2019-11-07 15:52:56 +01:00
parent 8e6cc015ff
commit e7456547bd

View File

@ -11,8 +11,7 @@
namespace Symfony\Component\ErrorHandler\ErrorEnhancer; namespace Symfony\Component\ErrorHandler\ErrorEnhancer;
use Composer\Autoload\ClassLoader as ComposerClassLoader; use Composer\Autoload\ClassLoader;
use Symfony\Component\ClassLoader\ClassLoader as SymfonyClassLoader;
use Symfony\Component\ErrorHandler\DebugClassLoader; use Symfony\Component\ErrorHandler\DebugClassLoader;
use Symfony\Component\ErrorHandler\Error\ClassNotFoundError; use Symfony\Component\ErrorHandler\Error\ClassNotFoundError;
use Symfony\Component\ErrorHandler\Error\FatalError; use Symfony\Component\ErrorHandler\Error\FatalError;
@ -107,14 +106,13 @@ class ClassNotFoundErrorEnhancer implements ErrorEnhancerInterface
} }
} }
if ($function[0] instanceof ComposerClassLoader || $function[0] instanceof SymfonyClassLoader) { if ($function[0] instanceof ClassLoader) {
foreach ($function[0]->getPrefixes() as $prefix => $paths) { foreach ($function[0]->getPrefixes() as $prefix => $paths) {
foreach ($paths as $path) { foreach ($paths as $path) {
$classes = array_merge($classes, $this->findClassInPath($path, $class, $prefix)); $classes = array_merge($classes, $this->findClassInPath($path, $class, $prefix));
} }
} }
}
if ($function[0] instanceof ComposerClassLoader) {
foreach ($function[0]->getPrefixesPsr4() as $prefix => $paths) { foreach ($function[0]->getPrefixesPsr4() as $prefix => $paths) {
foreach ($paths as $path) { foreach ($paths as $path) {
$classes = array_merge($classes, $this->findClassInPath($path, $class, $prefix)); $classes = array_merge($classes, $this->findClassInPath($path, $class, $prefix));