Mercurial > dovecot > original-hg > dovecot-1.2
changeset 1985:3ccd4eb52ee4 HEAD
don't crash when requesting messages from empty mailbox
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 10 May 2004 02:20:04 +0300 |
parents | 9c159272f721 |
children | 7ac0ef106427 |
files | src/lib-index/mail-index-view.c src/lib-storage/index/index-search.c |
diffstat | 2 files changed, 12 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-index/mail-index-view.c Mon May 10 02:06:27 2004 +0300 +++ b/src/lib-index/mail-index-view.c Mon May 10 02:20:04 2004 +0300 @@ -209,8 +209,7 @@ rec = view->map->records; - idx = 0; - left_idx = *left_idx_p; + idx = left_idx = *left_idx_p; right_idx = view->map->records_count; while (left_idx < right_idx) { @@ -224,6 +223,11 @@ break; } + if (idx == view->map->records_count) { + /* no messages available */ + return 0; + } + *left_idx_p = left_idx; if (rec[idx].uid != uid) { if (nearest_side > 0) {
--- a/src/lib-storage/index/index-search.c Mon May 10 02:06:27 2004 +0300 +++ b/src/lib-storage/index/index-search.c Mon May 10 02:20:04 2004 +0300 @@ -691,6 +691,12 @@ return -1; } + if (hdr->messages_count == 0) { + ctx->seq1 = 1; + ctx->seq2 = 0; + return 0; + } + if (search_parse_msgset_args(ctx->ibox, hdr, args, &ctx->seq1, &ctx->seq2) < 0) return -1;