aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Bridges <bridges2@gmail.com>2019-07-10 21:49:09 -0700
committerDrew DeVault <sir@cmpwn.com>2019-07-11 19:38:40 -0400
commit06da4512b98e6dd0526522f5350d22555d7e5d83 (patch)
tree26950235ff318678e66205ef553b17f14f49a716
parent0b3aca4167c72a7ab765cf8228bdc8b5b25614cf (diff)
downloadaerc-06da4512b98e6dd0526522f5350d22555d7e5d83.tar.gz
#190 Handle gmail duplicate folder
-rw-r--r--lib/msgstore.go2
-rw-r--r--worker/imap/create.go5
-rw-r--r--worker/types/messages.go1
3 files changed, 4 insertions, 4 deletions
diff --git a/lib/msgstore.go b/lib/msgstore.go
index 038c3cac..27b63f39 100644
--- a/lib/msgstore.go
+++ b/lib/msgstore.go
@@ -236,6 +236,7 @@ func (store *MessageStore) Copy(uids []uint32, dest string, createDest bool,
if createDest {
store.worker.PostAction(&types.CreateDirectory{
Directory: dest,
+ Quiet: true,
}, cb)
}
@@ -255,6 +256,7 @@ func (store *MessageStore) Move(uids []uint32, dest string, createDest bool,
if createDest {
store.worker.PostAction(&types.CreateDirectory{
Directory: dest,
+ Quiet: true,
}, cb)
}
diff --git a/worker/imap/create.go b/worker/imap/create.go
index 3cc71c59..6ce71ef6 100644
--- a/worker/imap/create.go
+++ b/worker/imap/create.go
@@ -1,15 +1,12 @@
package imap
import (
- "strings"
-
"git.sr.ht/~sircmpwn/aerc/worker/types"
)
func (imapw *IMAPWorker) handleCreateDirectory(msg *types.CreateDirectory) {
if err := imapw.client.Create(msg.Directory); err != nil {
- if strings.HasPrefix(err.Error(), "Mailbox already exists") {
- // ignore "already exists" error
+ if msg.Quiet {
return
}
imapw.worker.PostMessage(&types.Error{
diff --git a/worker/types/messages.go b/worker/types/messages.go
index bab14e00..34a1e5cc 100644
--- a/worker/types/messages.go
+++ b/worker/types/messages.go
@@ -90,6 +90,7 @@ type SearchDirectory struct {
type CreateDirectory struct {
Message
Directory string
+ Quiet bool
}
type FetchMessageHeaders struct {