From 43486922fac591683fcbe4335166c349f726c6eb Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Wed, 31 Aug 2011 09:36:27 -0400 Subject: [PATCH] Improve error reporting in installer --- installer/rcube_install.php | 17 ++++---- installer/utils.php | 18 ++++++++- installer/index.php | 28 ++++++++++++++ 3 files changed, 53 insertions(+), 10 deletions(-) diff --git a/installer/index.php b/installer/index.php index 8df7ab0..7ed5224 100644 --- a/installer/index.php +++ b/installer/index.php @@ -1,5 +1,33 @@ <?php +/* + +-------------------------------------------------------------------------+ + | Roundcube Webmail setup tool | + | Version 0.6 | + | | + | Copyright (C) 2009-2011, The Roundcube Dev Team | + | | + | This program is free software; you can redistribute it and/or modify | + | it under the terms of the GNU General Public License version 2 | + | as published by the Free Software Foundation. | + | | + | This program is distributed in the hope that it will be useful, | + | but WITHOUT ANY WARRANTY; without even the implied warranty of | + | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | + | GNU General Public License for more details. | + | | + | You should have received a copy of the GNU General Public License along | + | with this program; if not, write to the Free Software Foundation, Inc., | + | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | + | | + +-------------------------------------------------------------------------+ + | Author: Thomas Bruederli <roundcube@gmail.com> | + +-------------------------------------------------------------------------+ + + $Id$ + +*/ + ini_set('error_reporting', E_ALL&~E_NOTICE); ini_set('display_errors', 1); diff --git a/installer/rcube_install.php b/installer/rcube_install.php index c8c103a..ff3f7a4 100644 --- a/installer/rcube_install.php +++ b/installer/rcube_install.php @@ -5,7 +5,7 @@ | rcube_install.php | | | | This file is part of the Roundcube Webmail package | - | Copyright (C) 2008-2009, The Roundcube Dev Team | + | Copyright (C) 2008-2011, The Roundcube Dev Team | | Licensed under the GNU Public License | +-----------------------------------------------------------------------+ @@ -95,14 +95,15 @@ */ function _load_config($suffix) { - @include RCMAIL_CONFIG_DIR . '/main.inc' . $suffix; - if (is_array($rcmail_config)) { - $this->config += $rcmail_config; + if (is_readable($main_inc = RCMAIL_CONFIG_DIR . '/main.inc' . $suffix)) { + include($main_inc); + if (is_array($rcmail_config)) + $this->config += $rcmail_config; } - - @include RCMAIL_CONFIG_DIR . '/db.inc'. $suffix; - if (is_array($rcmail_config)) { - $this->config += $rcmail_config; + if (is_readable($db_inc = RCMAIL_CONFIG_DIR . '/db.inc'. $suffix)) { + include($db_inc); + if (is_array($rcmail_config)) + $this->config += $rcmail_config; } } diff --git a/installer/utils.php b/installer/utils.php index b08a118..a7521b9 100644 --- a/installer/utils.php +++ b/installer/utils.php @@ -2,9 +2,9 @@ /* +-------------------------------------------------------------------------+ | Roundcube Webmail IMAP Client | - | Version 0.3-20090702 | + | Version 0.6 | | | - | Copyright (C) 2005-2009, The Roundcube Dev Team | + | Copyright (C) 2005-2011, The Roundcube Dev Team | | | | This program is free software; you can redistribute it and/or modify | | it under the terms of the GNU General Public License version 2 | @@ -64,3 +64,17 @@ $rci = rcube_install::get_instance(); $rci->raise_error($p); } + +/** + * Local callback function for PEAR errors + */ +function rcube_pear_error($err) +{ + raise_error(array( + 'code' => $err->getCode(), + 'message' => $err->getMessage(), + )); +} + +// set PEAR error handling (will also load the PEAR main class) +PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'rcube_pear_error'); -- Gitblit v1.9.1