From 1fc2c8801a2b75f462251be8ae266e1699497f95 Mon Sep 17 00:00:00 2001 From: Ian Morland Date: Wed, 11 Oct 2023 12:32:31 +0100 Subject: [PATCH] address stan issue on php 8.2 --- framework/core/src/Extend/Conditional.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/framework/core/src/Extend/Conditional.php b/framework/core/src/Extend/Conditional.php index 55584beebe..f9098430a0 100644 --- a/framework/core/src/Extend/Conditional.php +++ b/framework/core/src/Extend/Conditional.php @@ -82,12 +82,15 @@ public function extend(Container $container, Extension $extension = null) if ($condition['condition']) { $extenders = $condition['extenders']; - if (is_string($extenders)) { - $extenders = $container->call($extenders); + if (is_string($extenders) && class_exists($extenders) && method_exists($extenders, '__invoke')) { + $result = $container->call($extenders); + $extenders = is_array($result) ? $result : [$result]; } elseif (is_callable($extenders)) { $extenders = $container->call($extenders); } + assert(is_array($extenders), 'Extenders should be an array after resolution.'); + foreach ($extenders as $extender) { $extender->extend($container, $extension); }