]>
Commit | Line | Data |
---|---|---|
889a5f9f AD |
1 | <?php |
2 | // TODO: make configurable | |
aca75cb5 AD |
3 | require_once "classes/logger.php"; |
4 | require_once "classes/logger/sql.php"; | |
889a5f9f AD |
5 | |
6 | function ttrss_error_handler($errno, $errstr, $file, $line, $context) { | |
7 | global $logger; | |
8 | ||
7a51032c AD |
9 | if (error_reporting() == 0) return false; |
10 | ||
889a5f9f AD |
11 | if (!$logger) $logger = new Logger_SQL(); |
12 | ||
4e53956a | 13 | $file = substr(str_replace(dirname(dirname(__FILE__)), "", $file), 1); |
889a5f9f AD |
14 | |
15 | if ($logger) { | |
16 | return $logger->log_error($errno, $errstr, $file, $line, $context); | |
17 | } | |
18 | ||
19 | return false; | |
20 | } | |
21 | ||
22 | function ttrss_fatal_handler() { | |
23 | global $logger; | |
24 | ||
889a5f9f AD |
25 | $error = error_get_last(); |
26 | ||
27 | if ($error !== NULL) { | |
77be1217 | 28 | $errno = $error["type"]; |
889a5f9f AD |
29 | $file = $error["file"]; |
30 | $line = $error["line"]; | |
31 | $errstr = $error["message"]; | |
32 | ||
33 | $context = debug_backtrace(); | |
34 | ||
4e53956a | 35 | $file = substr(str_replace(dirname(dirname(__FILE__)), "", $file), 1); |
889a5f9f AD |
36 | |
37 | if (!$logger) $logger = new Logger_SQL(); | |
38 | ||
39 | if ($logger) { | |
aca75cb5 AD |
40 | if ($logger->log_error($errno, $errstr, $file, $line, $context)) { |
41 | return true; | |
42 | } | |
889a5f9f | 43 | } |
aca75cb5 | 44 | return false; |
889a5f9f | 45 | } |
aca75cb5 AD |
46 | |
47 | return false; | |
889a5f9f AD |
48 | } |
49 | ||
aca75cb5 AD |
50 | register_shutdown_function('ttrss_fatal_handler'); |
51 | set_error_handler('ttrss_error_handler'); | |
889a5f9f | 52 | ?> |