diff options
| author | Aleksander Machniak <alec@alec.pl> | 2015-01-14 05:36:05 -0500 | 
|---|---|---|
| committer | Aleksander Machniak <alec@alec.pl> | 2015-01-14 05:36:05 -0500 | 
| commit | 1f9c9fea5529b2b2218f7b3f0e09bd804afc89ac (patch) | |
| tree | 448bba628380dd3260d849836c3f8f01825cd360 /plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php | |
| parent | e44e51561d2329e8f1e9ec88901d3c757f067303 (diff) | |
Fix bug where actions without if/elseif/else in sieve scripts were skipped
Diffstat (limited to 'plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php')
| -rw-r--r-- | plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php b/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php index 25016c878..6ed876267 100644 --- a/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php +++ b/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php @@ -1270,8 +1270,11 @@ class rcube_sieve_engine          $out .= $hiddenfields->show();          // 'any' flag -        if (sizeof($scr['tests']) == 1 && $scr['tests'][0]['test'] == 'true' && !$scr['tests'][0]['not']) +        if ((!isset($this->form) && empty($scr['tests']) && !empty($src)) +            || (sizeof($scr['tests']) == 1 && $scr['tests'][0]['test'] == 'true' && !$scr['tests'][0]['not']) +        ) {              $any = true; +        }          // filter name input          $field_id = '_name'; @@ -2282,7 +2285,7 @@ class rcube_sieve_engine          $i      = 1;          foreach ($this->script as $idx => $filter) { -            if ($filter['type'] != 'if') { +            if (empty($filter['actions'])) {                  continue;              }              $fname = $filter['name'] ? $filter['name'] : "#$i"; | 
