bug #22311 [DI] Fix second auto-registration (nicolas-grekas)
This PR was merged into the 2.8 branch.
Discussion
----------
[DI] Fix second auto-registration
| Q | A
| ------------- | ---
| Branch? | 2.8
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #22309
| License | MIT
| Doc PR | -
My bad
Commits
-------
c02de845e7
[DI] Fix second auto-registration
This commit is contained in:
commit
0eb4d2a4d7
@ -116,7 +116,8 @@ class AutowirePass implements CompilerPassInterface
|
||||
}
|
||||
|
||||
if (isset($this->autowired[$typeHint->name])) {
|
||||
return $this->autowired[$typeHint->name] ? new Reference($this->autowired[$typeHint->name]) : null;
|
||||
$arguments[$index] = $this->autowired[$typeHint->name] ? new Reference($this->autowired[$typeHint->name]) : null;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (null === $this->types) {
|
||||
|
@ -212,8 +212,9 @@ class AutowirePassTest extends TestCase
|
||||
$pass = new AutowirePass();
|
||||
$pass->process($container);
|
||||
|
||||
$this->assertCount(1, $container->getDefinition('coop_tilleuls')->getArguments());
|
||||
$this->assertCount(2, $container->getDefinition('coop_tilleuls')->getArguments());
|
||||
$this->assertEquals('autowired.symfony\component\dependencyinjection\tests\compiler\dunglas', $container->getDefinition('coop_tilleuls')->getArgument(0));
|
||||
$this->assertEquals('autowired.symfony\component\dependencyinjection\tests\compiler\dunglas', $container->getDefinition('coop_tilleuls')->getArgument(1));
|
||||
|
||||
$dunglasDefinition = $container->getDefinition('autowired.Symfony\Component\DependencyInjection\Tests\Compiler\Dunglas');
|
||||
$this->assertEquals(__NAMESPACE__.'\Dunglas', $dunglasDefinition->getClass());
|
||||
@ -600,7 +601,7 @@ class Dunglas
|
||||
|
||||
class LesTilleuls
|
||||
{
|
||||
public function __construct(Dunglas $k)
|
||||
public function __construct(Dunglas $j, Dunglas $k)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user