slightly better error handling

darcs-hash:20080716064736-5a68a-b57c978702037f380e31d2d8825109821a01cef5.gz
This commit is contained in:
Evan Prodromou 2008-07-16 02:47:36 -04:00
parent c265587612
commit 3d96d6f5f7
2 changed files with 25 additions and 3 deletions

View File

@ -39,7 +39,7 @@ class Laconica_XMPP extends XMPPHP_XMPP {
$out .= "</message>"; $out .= "</message>";
$cnt = strlen($out); $cnt = strlen($out);
common_log(LOG_DEBUG, 'Sending $cnt chars to $to'); common_log(LOG_DEBUG, "Sending $cnt chars to $to");
$this->send($out); $this->send($out);
common_log(LOG_DEBUG, 'Done.'); common_log(LOG_DEBUG, 'Done.');
} }

View File

@ -19,8 +19,30 @@
*/ */
function xmppdaemon_error_handler($errno, $errstr, $errfile, $errline, $errcontext) { function xmppdaemon_error_handler($errno, $errstr, $errfile, $errline, $errcontext) {
print "Error $errno in $errfile[$errline]: $errstr\n"; switch ($errno) {
die(); case E_USER_ERROR:
echo "<b>My ERROR</b> [$errno] $errstr<br />\n";
echo " Fatal error on line $errline in file $errfile";
echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />\n";
echo "Aborting...<br />\n";
exit(1);
break;
case E_USER_WARNING:
echo "<b>My WARNING</b> [$errno] $errstr<br />\n";
break;
case E_USER_NOTICE:
echo "<b>My NOTICE</b> [$errno] $errstr<br />\n";
break;
default:
echo "Unknown error type: [$errno] $errstr<br />\n";
break;
}
/* Don't execute PHP internal error handler */
return true;
} }
set_error_handler('xmppdaemon_error_handler'); set_error_handler('xmppdaemon_error_handler');