8000 added functionality for PhpFileLoader · symfony/symfony@3bbf849 · GitHub
[go: up one dir, main page]

Skip to content

Commit 3bbf849

Browse files
added functionality for PhpFileLoader
1 parent 36c62ca commit 3bbf849

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

src/Symfony/Component/DependencyInjection/ContainerBuilder.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1525,9 +1525,14 @@ public function getRemovedBindingIds()
15251525
*
15261526
* @internal
15271527
*/
1528-
public function addRemovedBindingId($id)
1528+
public function addRemovedBindingIds($id)
15291529
{
1530-
$this->removedBindingIds[(int) $id] = true;
1530+
if ($this->hasDefinition($id)) {
1531+
foreach ($this->getDefinition($id)->getBindings() as $key => $binding) {
1532+
list(, $bindingId) = $binding->getValues();
1533+
$this->removedBindingIds[(int) $bindingId] = true;
1534+
}
1535+
}
15311536
}
15321537

15331538
/**

src/Symfony/Component/DependencyInjection/Loader/Configurator/ServiceConfigurator.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ public function __destruct()
5959
{
6060
parent::__destruct();
6161

62+
$this->container->addRemovedBindingIds($this->id);
63+
6264
if (!$this->definition instanceof ChildDefinition) {
6365
$this->container->setDefinition($this->id, $this->definition->setInstanceofConditionals($this->instanceof));
6466
} else {

src/Symfony/Component/DependencyInjection/Loader/FileLoader.php

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -91,12 +91,7 @@ public function registerClasses(Definition $prototype, $namespace, $resource, $e
9191
*/
9292
protected function setDefinition($id, Definition $definition)
9393
{
94-
if ($this->container->hasDefinition($id)) {
95-
foreach ($this->container->getDefinition($id)->getBindings() as $key => $binding) {
96-
list(, $bindingId) = $binding->getValues();
97-
$this->container->addRemovedBindingId($bindingId);
98-
}
99-
}
94+
$this->container->addRemovedBindingIds($id);
10095

10196
if ($this->isLoadingInstanceof) {
10297
if (!$definition instanceof ChildDefinition) {

0 commit comments

Comments
 (0)
0