# HG changeset patch # User Timo Sirainen # Date 1221296176 -10800 # Node ID b3fb8215a3396f7c7a1533cd2eaa6a665801113e # Parent 32aa972895cc233bcef283ab423efe1a0cf08c6f Sort indexes: Don't assert-crash with broken sort IDs. diff -r 32aa972895cc -r b3fb8215a339 src/lib-storage/index/index-sort-string.c --- a/src/lib-storage/index/index-sort-string.c Thu Sep 11 23:16:27 2008 +0300 +++ b/src/lib-storage/index/index-sort-string.c Sat Sep 13 11:56:16 2008 +0300 @@ -607,7 +607,11 @@ 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);