8000 [ClassLoader] Fix declared classes being computed when not needed · symfony/symfony@d513eae · GitHub
[go: up one dir, main page]

Skip to content

Commit d513eae

Browse files
[ClassLoader] Fix declared classes being computed when not needed
1 parent 0259bed commit d513eae

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

src/Symfony/Component/ClassLoader/ClassCollectionLoader.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ public static function load($classes, $cacheDir, $name, $autoReload, $adaptive =
4343

4444
self::$loaded[$name] = true;
4545

46-
$declared = array_merge(get_declared_classes(), get_declared_interfaces());
47-
if (function_exists('get_declared_traits')) {
48-
$declared = array_merge($declared, get_declared_traits());
49-
}
50-
5146
if ($adaptive) {
47+
$declared = array_merge(get_declared_classes(), get_declared_interfaces());
48+
if (function_exists('get_declared_traits')) {
49+
$declared = array_merge($declared, get_declared_traits());
50+
}
51+
5252
// don't include already declared classes
5353
$classes = array_diff($classes, $declared);
5454

@@ -87,11 +87,17 @@ public static function load($classes, $cacheDir, $name, $autoReload, $adaptive =
8787
}
8888
}
8989

90-
if (!$reload && is_file($cache)) {
90+
if (!$reload && file_exists($cache)) {
9191
require_once $cache;
9292

9393
return;
9494
}
95+
if (!$adaptive) {
96+
$declared = array_merge(get_declared_classes(), get_declared_interfaces());
97+
if (function_exists('get_declared_traits')) {
98+
$declared = array_merge($declared, get_declared_traits());
99+
}
100+
}
95101

96102
$files = array();
97103
$content = '';

0 commit comments

Comments
 (0)
0