Commit 92eda80f authored by Dries's avatar Dries

- Patch #208270 by jvandyk: fixed error handling of XML-RPC library.

parent 9db1abf5
......@@ -342,7 +342,7 @@ function xmlrpc_request($method, $args) {
}
function xmlrpc_error($code = NULL, $message = NULL) {
function xmlrpc_error($code = NULL, $message = NULL, $reset = FALSE) {
static $xmlrpc_error;
if (isset($code)) {
$xmlrpc_error = new stdClass();
......@@ -351,6 +351,9 @@ function xmlrpc_error($code = NULL, $message = NULL) {
$xmlrpc_error->message = $message;
module_invoke('system', 'check_http_request');
}
elseif ($reset) {
$xmlrpc_error = NULL;
}
return $xmlrpc_error;
}
......@@ -427,6 +430,7 @@ function xmlrpc_base64_get_xml($xmlrpc_base64) {
function _xmlrpc() {
$args = func_get_args();
$url = array_shift($args);
xmlrpc_clear_error();
if (is_array($args[0])) {
$method = 'system.multicall';
$multicall_args = array();
......@@ -475,3 +479,10 @@ function xmlrpc_error_msg() {
$error = xmlrpc_error();
return ($error != NULL ? $error->message : NULL);
}
/**
* Clears any previous error.
*/
function xmlrpc_clear_error() {
xmlrpc_error(NULL, NULL, TRUE);
}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment