From 9b85872ed4526688a6195cfa8af19be20ed869c2 Mon Sep 17 00:00:00 2001 From: Jesse Rosenthal Date: Mon, 26 Apr 2010 20:29:27 -0400 Subject: [PATCH] emacs: fcc should fail at the right time if it doesn't point to a maildir Throw an error after the maildir is generated but before the message is sent. This change allows the user to edit the maildir if it fails, so that it will point to a correct place. Note that this changes the previous behavior which always overwrote the existing Fcc line. Now, an Fcc line is only auto-generated if there isn't one already there. The ideal change would be to prompt to create a maildir. This should enable a place for doing that in a future patch. --- emacs/notmuch-maildir-fcc.el | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/emacs/notmuch-maildir-fcc.el b/emacs/notmuch-maildir-fcc.el index 64f60bc6..34b19154 100644 --- a/emacs/notmuch-maildir-fcc.el +++ b/emacs/notmuch-maildir-fcc.el @@ -70,8 +70,11 @@ (let ((subdir (cdr (assoc-string (message-fetch-field "from") notmuch-fcc-dirs t)))) (if (eq subdir nil) (setq subdir (car (car notmuch-fcc-dirs)))) - (message-remove-header "Fcc") - (message-add-header (concat "Fcc: " message-directory subdir))))) + (unless (message-fetch-field "fcc") + (message-add-header (concat "Fcc: " message-directory subdir))) + (unless (notmuch-maildir-fcc-dir-is-maildir-p + (message-fetch-field "fcc")) + (error (format "%s is not a maildir." (message-fetch-field "fcc"))))))) (defun notmuch-maildir-fcc-host-fixer (hostname) (replace-regexp-in-string "/\\|:"