diff options
author | Jason Cox <me@jasoncarloscox.com> | 2024-02-23 11:40:16 -0500 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2024-04-02 22:22:25 +0200 |
commit | 54a72f83035bdf710368846e55a5b003ccab66cd (patch) | |
tree | bdf5f745da4918d05a1493df6382213853780f3c | |
parent | 3ee53c3012ea2a01bfce19c087c6ed0c8251a797 (diff) | |
download | aerc-54a72f83035bdf710368846e55a5b003ccab66cd.tar.gz |
notmuch: simplify moving a message
Delete the existing file from the database after indexing the new one to
avoid the need to remember and re-apply tags.
Signed-off-by: Jason Cox <me@jasoncarloscox.com>
Tested-by: Maarten Aertsen <maarten@nlnetlabs.nl>
Acked-by: Robin Jarry <robin@jarry.cc>
-rw-r--r-- | worker/notmuch/message.go | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/worker/notmuch/message.go b/worker/notmuch/message.go index 2a8b1730..09850d64 100644 --- a/worker/notmuch/message.go +++ b/worker/notmuch/message.go @@ -237,19 +237,10 @@ func (m *Message) Move(srcDir, destDir maildir.Dir) error { return fmt.Errorf("no matching message file found in %s", string(srcDir)) } - tags, err := m.Tags() - if err != nil { - return err - } - // Remove encoded UID information from the key to prevent sync issues name := lib.StripUIDFromMessageFilename(filepath.Base(src)) dest := filepath.Join(string(destDir), "cur", name) - if err := m.db.DeleteMessage(src); err != nil { - return err - } - if err := os.Rename(src, dest); err != nil { return err } @@ -258,7 +249,7 @@ func (m *Message) Move(srcDir, destDir maildir.Dir) error { return err } - if err := m.ModifyTags(tags, nil); err != nil { + if err := m.db.DeleteMessage(src); err != nil { return err } |