From e17decc4c2b175e1b2e3cd79f7c8b4c39c1f70f1 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak <alec@alec.pl> Date: Tue, 03 Feb 2015 07:52:14 -0500 Subject: [PATCH] Better handle log/temp directory misconfiguration --- program/lib/Roundcube/rcube_config.php | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/program/lib/Roundcube/rcube_config.php b/program/lib/Roundcube/rcube_config.php index 3fae931..89e4544 100644 --- a/program/lib/Roundcube/rcube_config.php +++ b/program/lib/Roundcube/rcube_config.php @@ -233,8 +233,14 @@ $this->prop['skin'] = self::DEFAULT_SKIN; // fix paths - $this->prop['log_dir'] = $this->prop['log_dir'] ? realpath(unslashify($this->prop['log_dir'])) : RCUBE_INSTALL_PATH . 'logs'; - $this->prop['temp_dir'] = $this->prop['temp_dir'] ? realpath(unslashify($this->prop['temp_dir'])) : RCUBE_INSTALL_PATH . 'temp'; + foreach (array('log_dir' => 'logs', 'temp_dir' => 'temp') as $key => $dir) { + foreach (array($this->prop[$key], '../' . $this->prop[$key], RCUBE_INSTALL_PATH . $dir) as $path) { + if ($path && ($realpath = realpath(unslashify($path)))) { + $this->prop[$key] = $realpath; + break; + } + } + } // fix default imap folders encoding foreach (array('drafts_mbox', 'junk_mbox', 'sent_mbox', 'trash_mbox') as $folder) { -- Gitblit v1.9.1