diff options
Diffstat (limited to 'worker/imap/list.go')
-rw-r--r-- | worker/imap/list.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/worker/imap/list.go b/worker/imap/list.go index 5e282ef7..552fb457 100644 --- a/worker/imap/list.go +++ b/worker/imap/list.go @@ -17,6 +17,19 @@ func (imapw *IMAPWorker) handleListDirectories(msg *types.ListDirectories) { // no need to pass this to handlers if it can't be opened continue } + if len(imapw.config.folders) > 0 { + // apply user filter + found := false + for _, folder := range imapw.config.folders { + if folder == mbox.Name || imapw.selected.Name == mbox.Name { + found = true + break + } + } + if !found { + continue + } + } imapw.worker.PostMessage(&types.Directory{ Message: types.RespondTo(msg), Name: mbox.Name, |