Index: XML/RPC2/Backend/Php/Server.php =================================================================== RCS file: /repository/pear/XML_RPC2/XML/RPC2/Backend/Php/Server.php,v retrieving revision 1.10 diff -u -p -r1.10 Server.php --- XML/RPC2/Backend/Php/Server.php 22 Jan 2006 02:00:41 -0000 1.10 +++ XML/RPC2/Backend/Php/Server.php 5 Sep 2006 18:32:07 -0000 @@ -111,7 +111,7 @@ class XML_RPC2_Backend_Php_Server extend public function getResponse() { try { - $oldErrorHandler = set_error_handler(array('XML_RPC2_Backend_Php_Server', 'errorToException')); + set_error_handler(array('XML_RPC2_Backend_Php_Server', 'errorToException')); $request = @simplexml_load_string($GLOBALS['HTTP_RAW_POST_DATA']); // TODO : do not use exception but a XMLRPC error ! if (!is_object($request)) throw new XML_RPC2_FaultException('Unable to parse request XML', 0); @@ -128,7 +128,7 @@ class XML_RPC2_Backend_Php_Server extend return (XML_RPC2_Backend_Php_Response::encodeFault(-32602, 'server error. invalid method parameters')); } } - if ($oldErrorHandler !== FALSE) set_error_handler($oldErrorHandler); + restore_error_handler(); return (XML_RPC2_Backend_Php_Response::encode(call_user_func_array(array($this->callHandler, $methodName), $arguments))); } catch (XML_RPC2_FaultException $e) { return (XML_RPC2_Backend_Php_Response::encodeFault($e->getFaultCode(), $e->getMessage())); Index: XML/RPC2/Backend/Xmlrpcext/Server.php =================================================================== RCS file: /repository/pear/XML_RPC2/XML/RPC2/Backend/Xmlrpcext/Server.php,v retrieving revision 1.9 diff -u -p -r1.9 Server.php --- XML/RPC2/Backend/Xmlrpcext/Server.php 22 Jan 2006 01:54:48 -0000 1.9 +++ XML/RPC2/Backend/Xmlrpcext/Server.php 5 Sep 2006 18:32:08 -0000 @@ -157,12 +157,12 @@ class XML_RPC2_Backend_Xmlrpcext_Server return (XML_RPC2_Backend_Php_Response::encodeFault(-32602, 'server error. invalid method parameters')); } } - $oldErrorHandler = set_error_handler(array('XML_RPC2_Backend_Xmlrpcext_Server', 'errorToException')); + set_error_handler(array('XML_RPC2_Backend_Xmlrpcext_Server', 'errorToException')); $response = @xmlrpc_server_call_method($this->_xmlrpcextServer, $GLOBALS['HTTP_RAW_POST_DATA'], null, array('output_type' => 'xml', 'encoding' => $this->encoding)); - if ($oldErrorHandler !== FALSE) set_error_handler($oldErrorHandler); + restore_error_handler(); return $response; } catch (XML_RPC2_FaultException $e) { return (XML_RPC2_Backend_Php_Response::encodeFault($e->getFaultCode(), $e->getMessage()));