From bb3da26d562727c3122a344622059ded2239d6ab Mon Sep 17 00:00:00 2001 From: Ondrej Mirtes Date: Wed, 15 May 2024 07:03:59 +0200 Subject: [PATCH] UnionTypeHelper - prevent infinite recursion --- src/Type/UnionTypeHelper.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Type/UnionTypeHelper.php b/src/Type/UnionTypeHelper.php index bbb097accf..a2c28b3153 100644 --- a/src/Type/UnionTypeHelper.php +++ b/src/Type/UnionTypeHelper.php @@ -109,7 +109,10 @@ public static function sortTypes(array $types): array return self::compareStrings($a->describe(VerbosityLevel::value()), $b->describe(VerbosityLevel::value())); } - if ($a->isCallable()->yes() && $b->isCallable()->yes()) { + if ( + ($a instanceof CallableType || $a instanceof ClosureType) + && ($b instanceof CallableType || $b instanceof ClosureType) + ) { return self::compareStrings($a->describe(VerbosityLevel::value()), $b->describe(VerbosityLevel::value())); }