From 51a02c800937d77f214082d744341adb0d00ca0a Mon Sep 17 00:00:00 2001
From: Roeland Jago Douma <roeland@famdouma.nl>
Date: Tue, 10 Nov 2020 21:05:32 +0100
Subject: [PATCH] ReflectionParamter::getClass is deprecated

In php8 this starts throwing warnings. And since we use it quite often
we flood the log. This moves it to getType which does the same. Only non
deprecated now.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
---
 lib/private/AppFramework/Utility/SimpleContainer.php | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/lib/private/AppFramework/Utility/SimpleContainer.php b/lib/private/AppFramework/Utility/SimpleContainer.php
index 3bb275a4d3c..f73e09e645e 100644
--- a/lib/private/AppFramework/Utility/SimpleContainer.php
+++ b/lib/private/AppFramework/Utility/SimpleContainer.php
@@ -73,13 +73,13 @@ class SimpleContainer implements ArrayAccess, ContainerInterface, IContainer {
 		}
 
 		return $class->newInstanceArgs(array_map(function (ReflectionParameter $parameter) {
-			$parameterClass = $parameter->getClass();
+			$parameterType = $parameter->getType();
+
+			$resolveName = $parameter->getName();
 
 			// try to find out if it is a class or a simple parameter
-			if ($parameterClass === null) {
-				$resolveName = $parameter->getName();
-			} else {
-				$resolveName = $parameterClass->name;
+			if ($parameterType !== null && !$parameterType->isBuiltin()) {
+				$resolveName = $parameterType->getName();
 			}
 
 			try {
@@ -91,7 +91,7 @@ class SimpleContainer implements ArrayAccess, ContainerInterface, IContainer {
 					return $parameter->getDefaultValue();
 				}
 
-				if ($parameterClass !== null) {
+				if ($parameterType !== null && !$parameterType->isBuiltin()) {
 					$resolveName = $parameter->getName();
 					return $this->query($resolveName);
 				}
-- 
GitLab