From f1e75c724d98dd6e8586f0189877d644eedc15e5 Mon Sep 17 00:00:00 2001
From: Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
Date: Sat, 26 Nov 2011 02:23:30 +0400
Subject: [PATCH] emacs: remove some code duplication in notmuch-show

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 | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
index d7fbbca9..20259ceb 100644
--- a/emacs/notmuch-show.el
+++ b/emacs/notmuch-show.el
@@ -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))
-- 
2.45.2