diff options
author | Manos Pitsidianakis <el13635@mail.ntua.gr> | 2020-11-30 02:16:11 +0200 |
---|---|---|
committer | Manos Pitsidianakis <el13635@mail.ntua.gr> | 2020-11-30 02:20:09 +0200 |
commit | bedf181aff3089fedad1f50dad9448ee2afc9241 (patch) | |
tree | fbb1fbbb798286d104b618d5f6bb25bf3b5790b1 /melib | |
parent | 9dd21eea50ceda147b5e8da27856bc576c1fbfda (diff) |
melib/imap: examine all mailboxes before idle
Diffstat (limited to 'melib')
-rw-r--r-- | melib/src/backends/imap/watch.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/melib/src/backends/imap/watch.rs b/melib/src/backends/imap/watch.rs index 4d5321b9..c913710c 100644 --- a/melib/src/backends/imap/watch.rs +++ b/melib/src/backends/imap/watch.rs @@ -110,6 +110,12 @@ pub async fn idle(kit: ImapWatchKit) -> Result<()> { let mailboxes_lck = timeout(uid_store.timeout, uid_store.mailboxes.lock()).await?; mailboxes_lck.clone() }; + for (h, mailbox) in mailboxes.clone() { + if mailbox_hash == h { + continue; + } + examine_updates(mailbox, &mut conn, &uid_store).await?; + } conn.send_command(b"IDLE").await?; let mut blockn = ImapBlockingConnection::from(conn); let mut watch = std::time::Instant::now(); |