summaryrefslogtreecommitdiffstats
path: root/system/libraries/Xmlrpcs.php
diff options
context:
space:
mode:
authorAndrey Andreev <narf@devilix.net>2021-02-04 16:32:53 +0100
committerAndrey Andreev <narf@devilix.net>2021-02-04 16:32:53 +0100
commit0925b5099919300a239909588351a6482c5e792d (patch)
tree4e0596b489defbba7b7590f7e9402035dc338bc5 /system/libraries/Xmlrpcs.php
parent751a2e364131a67ec64f783003866c0fe2df78e0 (diff)
[ci skip] Fix is_callable()-reliant logic broken by PHP 8
Close #6006, #6007
Diffstat (limited to 'system/libraries/Xmlrpcs.php')
-rw-r--r--system/libraries/Xmlrpcs.php2
1 files changed, 1 insertions, 1 deletions
diff --git a/system/libraries/Xmlrpcs.php b/system/libraries/Xmlrpcs.php
index ad767eabe..e20bf4836 100644
--- a/system/libraries/Xmlrpcs.php
+++ b/system/libraries/Xmlrpcs.php
@@ -348,7 +348,7 @@ class CI_Xmlrpcs extends CI_Xmlrpc {
return new XML_RPC_Response(0, $this->xmlrpcerr['unknown_method'], $this->xmlrpcstr['unknown_method']);
}
}
- elseif (($objectCall && ! is_callable(array($method_parts[0], $method_parts[1])))
+ elseif (($objectCall && ( ! method_exists($method_parts[0], $method_parts[1]) OR ! (new ReflectionMethod($method_parts[0], $method_parts[1]))->isPublic()))
OR ( ! $objectCall && ! is_callable($this->methods[$methName]['function']))
)
{