From: Timo Sirainen Date: Sat, 13 Sep 2008 08:56:16 +0000 (+0300) Subject: Sort indexes: Don't assert-crash with broken sort IDs. X-Git-Tag: 1.2.alpha2~55 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1aba6c7fba4ee28d3e90e0885424abe6a4b08e91;p=thirdparty%2Fdovecot%2Fcore.git Sort indexes: Don't assert-crash with broken sort IDs. --HG-- branch : HEAD --- diff --git a/src/lib-storage/index/index-sort-string.c b/src/lib-storage/index/index-sort-string.c index 17a839e592..775b7389c0 100644 --- a/src/lib-storage/index/index-sort-string.c +++ b/src/lib-storage/index/index-sort-string.c @@ -607,7 +607,11 @@ index_sort_add_ids_range(struct sort_string_context *ctx, messages */ skip = (right_sort_id - left_sort_id) / (right_idx - i + 2); - i_assert(skip > 0); + if (skip == 0) { + /* broken sort IDs (we previously assigned + left_sort_id=right_sort_id) */ + return -1; + } left_sort_id += skip; i_assert(left_sort_id < right_sort_id);