Skip to content

Commit 91450b8

Browse files
Merge branch '5.4' into 6.4
* 5.4: [DependencyInjection] Fix computing error messages involving service locators [Serializer] Fix unknown types normalization type when know type [ErrorHandler] Fix parsing messages that contain anonymous classes on PHP >= 8.3.3 [Validator] Review Romanian (ro) translations [Console] Fix display of Table on Windows OS [FrameworkBundle] Fix config builder with extensions extended in `build()` [WebProfilerBundle] disable turbo in web profiler toolbar to avoid link prefetching explicitly cast boolean SSL stream options return the unchanged text if preg_replace_callback() fails the 'use_notify' option is on the factory, not on the postgres connection class review translations
2 parents e8bb1d3 + 224f690 commit 91450b8

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

CacheWarmer/ConfigBuilderCacheWarmer.php

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
use Symfony\Component\DependencyInjection\ParameterBag\ContainerBag;
2323
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
2424
use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmerInterface;
25+
use Symfony\Component\HttpKernel\Kernel;
2526
use Symfony\Component\HttpKernel\KernelInterface;
2627

2728
/**
@@ -53,12 +54,27 @@ public function warmUp(string $cacheDir /* , string $buildDir = null */): array
5354

5455
$generator = new ConfigBuilderGenerator($buildDir);
5556

56-
foreach ($this->kernel->getBundles() as $bundle) {
57-
$extension = $bundle->getContainerExtension();
58-
if (null === $extension) {
59-
continue;
57+
if ($this->kernel instanceof Kernel) {
58+
/** @var ContainerBuilder $container */
59+
$container = \Closure::bind(function (Kernel $kernel) {
60+
$containerBuilder = $kernel->getContainerBuilder();
61+
$kernel->prepareContainer($containerBuilder);
62+
63+
return $containerBuilder;
64+
}, null, $this->kernel)($this->kernel);
65+
66+
$extensions = $container->getExtensions();
67+
} else {
68+
$extensions = [];
69+
foreach ($this->kernel->getBundles() as $bundle) {
70+
$extension = $bundle->getContainerExtension();
71+
if (null !== $extension) {
72+
$extensions[] = $extension;
73+
}
6074
}
75+
}
6176

77+
foreach ($extensions as $extension) {
6278
try {
6379
$this->dumpExtension($extension, $generator);
6480
} catch (\Exception $e) {

0 commit comments

Comments
 (0)