Skip to content

Commit 8a49521

Browse files
committed
Merge remote-tracking branch 'origin/1.3.x' into 1.4.x
2 parents e764a6a + 0edf5b0 commit 8a49521

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/Type/Doctrine/ArgumentsProcessor.php

+15-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,14 @@
1313
class ArgumentsProcessor
1414
{
1515

16+
/** @var ObjectMetadataResolver */
17+
private $objectMetadataResolver;
18+
19+
public function __construct(ObjectMetadataResolver $objectMetadataResolver)
20+
{
21+
$this->objectMetadataResolver = $objectMetadataResolver;
22+
}
23+
1624
/**
1725
* @param Arg[] $methodCallArgs
1826
* @return list<mixed>
@@ -49,7 +57,13 @@ public function processArgs(
4957
}
5058

5159
if ($value->isClassStringType()->yes() && count($value->getClassStringObjectType()->getObjectClassNames()) === 1) {
52-
$args[] = $value->getClassStringObjectType()->getObjectClassNames()[0];
60+
/** @var class-string $className */
61+
$className = $value->getClassStringObjectType()->getObjectClassNames()[0];
62+
if ($this->objectMetadataResolver->isTransient($className)) {
63+
throw new DynamicQueryBuilderArgumentException();
64+
}
65+
66+
$args[] = $className;
5367
continue;
5468
}
5569

0 commit comments

Comments
 (0)