[DI] Fix non-string class handling in PhpDumper
This commit is contained in:
parent
22a6a7e4c5
commit
730b156f35
@ -413,7 +413,7 @@ EOTXT;
|
|||||||
if ($this->inlineRequires && !$this->isHotPath($definition)) {
|
if ($this->inlineRequires && !$this->isHotPath($definition)) {
|
||||||
$lineage = $calls = $behavior = array();
|
$lineage = $calls = $behavior = array();
|
||||||
foreach ($inlinedDefinitions as $def) {
|
foreach ($inlinedDefinitions as $def) {
|
||||||
if (!$def->isDeprecated() && $class = is_array($factory = $def->getFactory()) && is_string($factory[0]) ? $factory[0] : $def->getClass()) {
|
if (!$def->isDeprecated() && is_string($class = is_array($factory = $def->getFactory()) && is_string($factory[0]) ? $factory[0] : $def->getClass())) {
|
||||||
$this->collectLineage($class, $lineage);
|
$this->collectLineage($class, $lineage);
|
||||||
}
|
}
|
||||||
$arguments = array($def->getArguments(), $def->getFactory(), $def->getProperties(), $def->getMethodCalls(), $def->getConfigurator());
|
$arguments = array($def->getArguments(), $def->getFactory(), $def->getProperties(), $def->getMethodCalls(), $def->getConfigurator());
|
||||||
@ -425,7 +425,7 @@ EOTXT;
|
|||||||
&& ContainerInterface::IGNORE_ON_UNINITIALIZED_REFERENCE !== $behavior[$id]
|
&& ContainerInterface::IGNORE_ON_UNINITIALIZED_REFERENCE !== $behavior[$id]
|
||||||
&& $this->container->has($id)
|
&& $this->container->has($id)
|
||||||
&& $this->isTrivialInstance($def = $this->container->findDefinition($id))
|
&& $this->isTrivialInstance($def = $this->container->findDefinition($id))
|
||||||
&& $class = is_array($factory = $def->getFactory()) && is_string($factory[0]) ? $factory[0] : $def->getClass()
|
&& is_string($class = is_array($factory = $def->getFactory()) && is_string($factory[0]) ? $factory[0] : $def->getClass())
|
||||||
) {
|
) {
|
||||||
$this->collectLineage($class, $lineage);
|
$this->collectLineage($class, $lineage);
|
||||||
}
|
}
|
||||||
@ -1226,7 +1226,7 @@ EOF;
|
|||||||
$inlinedDefinitions = $this->getDefinitionsFromArguments(array($definition));
|
$inlinedDefinitions = $this->getDefinitionsFromArguments(array($definition));
|
||||||
|
|
||||||
foreach ($inlinedDefinitions as $def) {
|
foreach ($inlinedDefinitions as $def) {
|
||||||
if ($class = is_array($factory = $def->getFactory()) && is_string($factory[0]) ? $factory[0] : $def->getClass()) {
|
if (is_string($class = is_array($factory = $def->getFactory()) && is_string($factory[0]) ? $factory[0] : $def->getClass())) {
|
||||||
$this->collectLineage($class, $lineage);
|
$this->collectLineage($class, $lineage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user