1
0
mirror of https://github.com/flarum/core.git synced 2025-08-06 08:27:42 +02:00

address stan issue on php 8.2

This commit is contained in:
Ian Morland
2023-10-11 12:32:31 +01:00
parent 3aa604eb25
commit 1fc2c8801a

View File

@@ -82,12 +82,15 @@ class Conditional implements ExtenderInterface
if ($condition['condition']) { if ($condition['condition']) {
$extenders = $condition['extenders']; $extenders = $condition['extenders'];
if (is_string($extenders)) { if (is_string($extenders) && class_exists($extenders) && method_exists($extenders, '__invoke')) {
$extenders = $container->call($extenders); $result = $container->call($extenders);
$extenders = is_array($result) ? $result : [$result];
} elseif (is_callable($extenders)) { } elseif (is_callable($extenders)) {
$extenders = $container->call($extenders); $extenders = $container->call($extenders);
} }
assert(is_array($extenders), 'Extenders should be an array after resolution.');
foreach ($extenders as $extender) { foreach ($extenders as $extender) {
$extender->extend($container, $extension); $extender->extend($container, $extension);
} }