From 04009e5ccbcfdee7d0f71f40eb402b94563983f9 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Tue, 3 Feb 2015 08:11:49 -0500 Subject: Fix bug in vacation script detection with kolab_master feature enabled but no active script --- plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php | 5 ++++- plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'plugins') diff --git a/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php b/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php index 860b40e61..d412e17db 100644 --- a/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php +++ b/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php @@ -2105,7 +2105,10 @@ class rcube_sieve_engine foreach ($rules['actions'] as $action) { if ($action['type'] == 'include' && empty($action['global'])) { $name = preg_replace($filename_regex, '', $action['target']); - $this->active[] = $name; + // make sure the script exist + if (in_array($name, $this->list)) { + $this->active[] = $name; + } } } } diff --git a/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php b/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php index 3d3db9a20..28fd80125 100644 --- a/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php +++ b/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php @@ -124,7 +124,7 @@ class rcube_sieve_vacation extends rcube_sieve_engine private function vacation_rule() { - if ($this->script_name === null || !$this->sieve->load($this->script_name)) { + if ($this->script_name === false || $this->script_name === null || !$this->sieve->load($this->script_name)) { return; } @@ -556,7 +556,7 @@ class rcube_sieve_vacation extends rcube_sieve_engine protected function save_vacation_script($rule) { // if script does not exist create a new one - if ($this->script_name === null) { + if ($this->script_name === null || $this->script_name === false) { $this->script_name = $this->rc->config->get('managesieve_script_name'); if (empty($this->script_name)) { $this->script_name = 'roundcube'; -- cgit v1.2.3