For message-fetch-field the buffer is expected to be narrowed to
just the header of the message. That is not the case when
notmuch-fcc-header-setup is run, hence a wrong header value may be
returned. E.g. when forwarding an
email, (message-fetch-field "From") returns the From header value
of the forwarded email.
Message-field-value is the same as message-fetch-field, only
narrows the buffer to the headers first.
Signed-off-by: Jameson Graef Rollins <jrollins@finestructure.net>
(let ((subdir
(cond
((or (not notmuch-fcc-dirs)
(let ((subdir
(cond
((or (not notmuch-fcc-dirs)
- (message-fetch-field "Fcc"))
+ (message-field-value "Fcc"))
;; Nothing set or an existing header.
nil)
;; Nothing set or an existing header.
nil)
(error "Invalid `notmuch-fcc-dirs' setting (old style)"))
((listp notmuch-fcc-dirs)
(error "Invalid `notmuch-fcc-dirs' setting (old style)"))
((listp notmuch-fcc-dirs)
- (let* ((from (message-fetch-field "From"))
+ (let* ((from (message-field-value "From"))
(match
(catch 'first-match
(dolist (re-folder notmuch-fcc-dirs)
(match
(catch 'first-match
(dolist (re-folder notmuch-fcc-dirs)
(concat (notmuch-database-path) "/" subdir)))))
;; finally test if fcc points to a valid maildir
(concat (notmuch-database-path) "/" subdir)))))
;; finally test if fcc points to a valid maildir
- (let ((fcc-header (message-fetch-field "Fcc")))
+ (let ((fcc-header (message-field-value "Fcc")))
(unless (notmuch-maildir-fcc-dir-is-maildir-p fcc-header)
(cond ((not (file-writable-p fcc-header))
(error (format "No permission to create %s, which does not exist"
(unless (notmuch-maildir-fcc-dir-is-maildir-p fcc-header)
(cond ((not (file-writable-p fcc-header))
(error (format "No permission to create %s, which does not exist"