From 76e499e8a1760d1c519a228e13dfdb69fd4c38f7 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Wed, 16 May 2012 15:00:23 +0200 Subject: Also accept PHP exceptions as argument to rcube::raise_error() --- program/include/rcube.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/program/include/rcube.php b/program/include/rcube.php index 694f28820..e9add8d5a 100644 --- a/program/include/rcube.php +++ b/program/include/rcube.php @@ -1050,6 +1050,18 @@ class rcube */ public static function raise_error($arg = array(), $log = false, $terminate = false) { + // handle PHP exceptions + if (is_object($arg) && is_a($arg, 'Exception')) { + $err = array( + 'type' => 'php', + 'code' => $arg->getCode(), + 'line' => $arg->getLine(), + 'file' => $arg->getFile(), + 'message' => $arg->getMessage(), + ); + $arg = $err; + } + // installer if (class_exists('rcube_install', false)) { $rci = rcube_install::get_instance(); -- cgit v1.2.3