From 8193151b5ae9e78818926b646a7e8181de97f41c Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Wed, 16 May 2012 08:47:35 -0400
Subject: [PATCH] Always log fatal errors that terminate the PHP script

---
 program/include/rcube.php |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/program/include/rcube.php b/program/include/rcube.php
index 272136f..694f288 100644
--- a/program/include/rcube.php
+++ b/program/include/rcube.php
@@ -1057,7 +1057,8 @@
             return;
         }
 
-        if ($log && $arg['type'] && $arg['message']) {
+        if (($log || $terminate) && $arg['type'] && $arg['message']) {
+            $arg['fatal'] = $terminate;
             self::log_bug($arg);
         }
 
@@ -1085,7 +1086,7 @@
         }
 
         // write error to local log file
-        if ($level & 1) {
+        if (($level & 1) || !empty($arg_arr['fatal'])) {
             if ($_SERVER['REQUEST_METHOD'] == 'POST') {
                 $post_query = '?_task='.urlencode($_POST['_task']).'&_action='.urlencode($_POST['_action']);
             }

--
Gitblit v1.9.1