From 829f1243fbe8f7ff5844693d1a6ff49b6e9a2f74 Mon Sep 17 00:00:00 2001 From: Manos Pitsidianakis Date: Wed, 30 Dec 2020 16:19:15 +0200 Subject: [PATCH] melib/imap: fix invalid FETCH edge case If mailbox was empty, this FETCH would request "0:*" which is an invalid message set since message sequence numbers start with 1. --- melib/src/backends/imap/watch.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/melib/src/backends/imap/watch.rs b/melib/src/backends/imap/watch.rs index 3c4ad3db..772b5a82 100644 --- a/melib/src/backends/imap/watch.rs +++ b/melib/src/backends/imap/watch.rs @@ -345,7 +345,7 @@ pub async fn examine_updates( conn.send_command( format!( "FETCH {}:* (UID FLAGS ENVELOPE BODY.PEEK[HEADER.FIELDS (REFERENCES)] BODYSTRUCTURE)", - mailbox.exists.lock().unwrap().len() + std::cmp::max(mailbox.exists.lock().unwrap().len(), 1) ) .as_bytes(), )