From 9370a5153237b68d38fc6c22d4ca1bb7eefeaf08 Mon Sep 17 00:00:00 2001 From: therion86 Date: Fri, 18 Jul 2025 00:16:41 +0200 Subject: [PATCH] Fix weird behavior with callable and datatypes --- .../DependencyInjectionContainer.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/DependencyInjection/DependencyInjectionContainer.php b/lib/DependencyInjection/DependencyInjectionContainer.php index 239ac84..f1cdeb3 100644 --- a/lib/DependencyInjection/DependencyInjectionContainer.php +++ b/lib/DependencyInjection/DependencyInjectionContainer.php @@ -99,7 +99,17 @@ private function getDependenciesByReflection(string $className): ?object } $dependencies[] = $param->getDefaultValue(); } else { - $dependencies[] = $this->load($type->getName()); + if ($type->isBuiltin()) { + if (!$param->isDefaultValueAvailable()) { + throw new ConstructorParameterTypeNotFoundException( + 'Default value must be Set for string, int etc. ' . $className + ); + } else { + $dependencies[] = $param->getDefaultValue(); + } + } else { + $dependencies[] = $this->load($type->getName()); + } } } return $refClass->newInstanceArgs($dependencies);