thomascube
2011-08-31 43486922fac591683fcbe4335166c349f726c6eb
Improve error reporting in installer

3 files modified
63 ■■■■ changed files
installer/index.php 28 ●●●●● patch | view | raw | blame | history
installer/rcube_install.php 17 ●●●● patch | view | raw | blame | history
installer/utils.php 18 ●●●● patch | view | raw | blame | history
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);
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;
    }
  }
  
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');