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:
Fabien Potencier 2017-04-06 09:16:06 -07:00
commit 0eb4d2a4d7
2 changed files with 5 additions and 3 deletions

View File

@ -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) {

View File

@ -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)
{
}
}