From 653a2254dcfba00926b7fa3966a0ec4ce653f520 Mon Sep 17 00:00:00 2001 From: alec Date: Thu, 15 Mar 2012 19:45:36 +0000 Subject: - Fixed tokenizer infinite loop on invalid script content git-svn-id: https://svn.roundcube.net/trunk@6014 208e9e7b-5314-0410-a742-e7e81cd9613c --- plugins/managesieve/Changelog | 1 + plugins/managesieve/lib/rcube_sieve_script.php | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/plugins/managesieve/Changelog b/plugins/managesieve/Changelog index 052333a81..dc0e19591 100644 --- a/plugins/managesieve/Changelog +++ b/plugins/managesieve/Changelog @@ -1,4 +1,5 @@ - Fixed filter popup width (for non-english localizations) +- Fixed tokenizer infinite loop on invalid script content * version 5.0 [2012-01-05] ----------------------------------------------------------- diff --git a/plugins/managesieve/lib/rcube_sieve_script.php b/plugins/managesieve/lib/rcube_sieve_script.php index f5ad62c3f..92f979cfd 100644 --- a/plugins/managesieve/lib/rcube_sieve_script.php +++ b/plugins/managesieve/lib/rcube_sieve_script.php @@ -1058,6 +1058,10 @@ class rcube_sieve_script $result[] = $text; } } + // fallback, skip one character as infinite loop prevention + else { + $str = substr($str, 1); + } break; } -- cgit v1.2.3