fixed possible problem in XMLRPC when no arguments are passed
Ignore-this: e422f7ffed22302c153bba0d7227b6e0 darcs-hash:20091211125537-7ad00-365862547d10c83af000b4ef0fb3f0d632d7ffea.gz
This commit is contained in:
parent
495ae559d1
commit
6fcceb42ba
1 changed files with 12 additions and 9 deletions
|
@ -350,6 +350,9 @@ EOD;
|
|||
|
||||
# Adjusted for DokuWiki to use call_user_func_array
|
||||
|
||||
// args need to be an array
|
||||
$args = (array) $args;
|
||||
|
||||
// Are we dealing with a function or a method?
|
||||
if (substr($method, 0, 5) == 'this:') {
|
||||
// It's a class method - check it exists
|
||||
|
@ -360,15 +363,15 @@ EOD;
|
|||
// Call the method
|
||||
#$result = $this->$method($args);
|
||||
$result = call_user_func_array(array(&$this,$method),$args);
|
||||
} elseif (substr($method, 0, 7) == 'plugin:') {
|
||||
require_once(DOKU_INC.'inc/pluginutils.php');
|
||||
list($pluginname, $callback) = explode(':', substr($method, 7), 2);
|
||||
if(!plugin_isdisabled($pluginname)) {
|
||||
$plugin = plugin_load('action', $pluginname);
|
||||
return call_user_func_array(array($plugin, $callback), $args);
|
||||
} else {
|
||||
return new IXR_Error(-99999, 'server error');
|
||||
}
|
||||
} elseif (substr($method, 0, 7) == 'plugin:') {
|
||||
require_once(DOKU_INC.'inc/pluginutils.php');
|
||||
list($pluginname, $callback) = explode(':', substr($method, 7), 2);
|
||||
if(!plugin_isdisabled($pluginname)) {
|
||||
$plugin = plugin_load('action', $pluginname);
|
||||
return call_user_func_array(array($plugin, $callback), $args);
|
||||
} else {
|
||||
return new IXR_Error(-99999, 'server error');
|
||||
}
|
||||
} else {
|
||||
// It's a function - does it exist?
|
||||
if (!function_exists($method)) {
|
||||
|
|
Loading…
Reference in a new issue