From: Timo Sirainen Date: Wed, 3 Dec 2025 00:27:35 +0000 (+0200) Subject: imapc: Fix handling SEARCH failures X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9381536d686621ae4a147a5698754e0610f71dd5;p=thirdparty%2Fdovecot%2Fcore.git imapc: Fix handling SEARCH failures Previously if the remote SEARCH failed, the failure was simply ignored and empty results returned. --- diff --git a/src/lib-storage/index/imapc/imapc-search.c b/src/lib-storage/index/imapc/imapc-search.c index 768d78be73..22b279c248 100644 --- a/src/lib-storage/index/imapc/imapc-search.c +++ b/src/lib-storage/index/imapc/imapc-search.c @@ -278,12 +278,17 @@ bool imapc_search_next_update_seq(struct mail_search_context *ctx) int imapc_search_deinit(struct mail_search_context *ctx) { struct imapc_search_context *ictx = IMAPC_SEARCHCTX(ctx); + int ret = 0; if (ictx != NULL) { + if (!ictx->success) + ret = -1; array_free(&ictx->rseqs); i_free(ictx); } - return index_storage_search_deinit(ctx); + if (index_storage_search_deinit(ctx) < 0) + return -1; + return ret; } void imapc_search_reply_search(const struct imap_arg *args,