diff --git a/src/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php b/src/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php index 35173cf3a031e..f6d032a4a0473 100644 --- a/src/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php +++ b/src/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php @@ -146,7 +146,7 @@ class_exists(ContainerConfigurator::class); $callback(...$arguments); foreach ($configBuilders as $configBuilder) { - $containerConfigurator->extension($configBuilder->getExtensionAlias(), $configBuilder->toArray(), $this->prepend); + $this->loadExtensionConfig($configBuilder->getExtensionAlias(), ContainerConfigurator::processValue($configBuilder->toArray())); } $this->loadExtensionConfigs(); diff --git a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.expected.yml b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.expected.yml index efe9667c0c7fd..b34e58227de11 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.expected.yml +++ b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.expected.yml @@ -1,5 +1,5 @@ parameters: - acme.configs: [{ color: blue }] + acme.configs: [{ color: red }, { color: blue }] services: service_container: diff --git a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.php b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.php index 02772e64ccb99..4b99622eeff1e 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/config_builder.php @@ -1,11 +1,14 @@ import('nested_config_builder.php'); + $config->color('blue'); }; diff --git a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/nested_config_builder.php b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/nested_config_builder.php new file mode 100644 index 0000000000000..7b475b200783d --- /dev/null +++ b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/config/nested_config_builder.php @@ -0,0 +1,11 @@ +color('red'); +}; diff --git a/src/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php b/src/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php index d3721286cd12a..d7df9b6f11875 100644 --- a/src/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php +++ b/src/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php @@ -56,6 +56,7 @@ public function testPrependExtensionConfig() $loader->load('config/config_builder.php'); $expected = [ + ['color' => 'red'], ['color' => 'blue'], ['foo' => 'bar'], ];
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: