Aleksander Machniak
2014-09-10 dcc4469844f8ce98bd8323b684e40cf64643e5ae
Don't init output in CLI mode

Fixes infinite recurssion on raise_error() call when executing scripts
out of the INSTALL_PATH. Also use 'rcube' if 'rcmail' is not needed.
5 files modified
16 ■■■■■ changed files
bin/cleandb.sh 2 ●●● patch | view | raw | blame | history
bin/decrypt.sh 2 ●●● patch | view | raw | blame | history
bin/indexcontacts.sh 2 ●●● patch | view | raw | blame | history
bin/moduserprefs.sh 2 ●●● patch | view | raw | blame | history
program/include/rcmail.php 8 ●●●●● patch | view | raw | blame | history
bin/cleandb.sh
@@ -30,7 +30,7 @@
);
// connect to DB
$RCMAIL = rcmail::get_instance();
$RCMAIL = rcube::get_instance();
$db = $RCMAIL->get_dbh();
$db->db_connect('w');
bin/decrypt.sh
@@ -60,7 +60,7 @@
    die("Usage: " . basename($argv[0]) . " encrypted-hdr-part [encrypted-hdr-part ...]\n");
}
$RCMAIL = rcmail::get_instance();
$RCMAIL = rcube::get_instance();
for ($i = 1; $i < $argc; $i++) {
    printf("%s\n", $RCMAIL->decrypt($argv[$i]));
bin/indexcontacts.sh
@@ -25,7 +25,7 @@
ini_set('memory_limit', -1);
// connect to DB
$RCMAIL = rcmail::get_instance();
$RCMAIL = rcube::get_instance();
$db = $RCMAIL->get_dbh();
$db->db_connect('w');
bin/moduserprefs.sh
@@ -47,7 +47,7 @@
$pref_value = $args['delete'] ? null : trim($args[1]);
// connect to DB
$rcmail = rcmail::get_instance();
$rcmail = rcube::get_instance();
$db = $rcmail->get_dbh();
$db->db_connect('w');
program/include/rcmail.php
@@ -116,11 +116,13 @@
            $_SESSION['task'] = $this->task;
        }
        // init output class
        if (!empty($_REQUEST['_remote']))
        // init output class (not in CLI mode)
        if (!empty($_REQUEST['_remote'])) {
            $GLOBALS['OUTPUT'] = $this->json_init();
        else
        }
        else if ($_SERVER['REMOTE_ADDR']) {
            $GLOBALS['OUTPUT'] = $this->load_gui(!empty($_REQUEST['_framed']));
        }
        // load plugins
        $this->plugins->init($this, $this->task);