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