emacs: remove some code duplication in notmuch-show
authorDmitry Kurochkin <dmitry.kurochkin@gmail.com>
Fri, 25 Nov 2011 22:23:30 +0000 (02:23 +0400)
committerDavid Bremner <bremner@debian.org>
Wed, 7 Dec 2011 23:58:45 +0000 (19:58 -0400)
Add optional props argument to `notmuch-show-get-header'.  Use it to
get headers in `notmuch-show-insert-part-multipart/signed' and
`notmuch-show-insert-part-multipart/encrypted'.

emacs/notmuch-show.el

index d7fbbca9471b374b8ce26b22bd15084a2a8a690d..20259ceb7c6e5704223390dfb805071fb5ecabdf 100644 (file)
@@ -460,8 +460,7 @@ current buffer, if possible."
     (button-put button 'face '(:foreground "blue"))
     ;; add signature status button if sigstatus provided
     (if (plist-member part :sigstatus)
-       (let* ((headers (plist-get msg :headers))
-              (from (plist-get headers :From))
+       (let* ((from (notmuch-show-get-header :From msg))
               (sigstatus (car (plist-get part :sigstatus))))
          (notmuch-crypto-insert-sigstatus-button sigstatus from))
       ;; if we're not adding sigstatus, tell the user how they can get it
@@ -487,8 +486,7 @@ current buffer, if possible."
          (notmuch-crypto-insert-encstatus-button encstatus)
          ;; add signature status button if sigstatus specified
          (if (plist-member part :sigstatus)
-             (let* ((headers (plist-get msg :headers))
-                    (from (plist-get headers :From))
+             (let* ((from (notmuch-show-get-header :From msg))
                     (sigstatus (car (plist-get part :sigstatus))))
                (notmuch-crypto-insert-sigstatus-button sigstatus from))))
       ;; if we're not adding encstatus, tell the user how they can get it
@@ -1089,9 +1087,9 @@ All currently available key bindings:
   "Return the filename of the current message."
   (notmuch-show-get-prop :filename))
 
-(defun notmuch-show-get-header (header)
+(defun notmuch-show-get-header (header &optional props)
   "Return the named header of the current message, if any."
-  (plist-get (notmuch-show-get-prop :headers) header))
+  (plist-get (notmuch-show-get-prop :headers props) header))
 
 (defun notmuch-show-get-cc ()
   (notmuch-show-get-header :Cc))