]> git.eshelyaron.com Git - emacs.git/commitdiff
(rmail-header-get-header): Accept more arguments and
authorAlex Schroeder <alex@gnu.org>
Mon, 23 Jan 2006 23:19:45 +0000 (23:19 +0000)
committerAlex Schroeder <alex@gnu.org>
Mon, 23 Jan 2006 23:19:45 +0000 (23:19 +0000)
pass them to mail-fetch-field unchanged.  Bind
inhibit-point-motion-hooks to t.

lisp/mail/rmailhdr.el

index 8c633e0dfa00923fc25c97290d91df7f2b3936a8..7c987d29c2adec61082ae9af1288d8d90795dc1d 100644 (file)
@@ -87,14 +87,20 @@ instead."
           (if (re-search-forward (concat "\\(" keyword ",\\|" keyword "$\\)"))
               t)))))
 
-(defun rmail-header-get-header (header)
-  "Return the text value for HEADER, nil if no such header exists.
-The current buffer, possibly narrowed, contains a single message."
+(defun rmail-header-get-header (&rest args)
+  "Return the text value for a header or nil if no such header exists.
+The arguments ARGS are passed to `mail-fetch-field'.  The first
+argument is the header to get.
+
+The current buffer, possibly narrowed, contains a single message.
+Note that it is not necessary to call `rmail-header-show-headers'
+because `inhibit-point-motion-hooks' is locally bound to t."
   (save-excursion
     (save-restriction
-      (let ((limit (rmail-header-get-limit)))
+      (let* ((inhibit-point-motion-hooks t)
+            (limit (rmail-header-get-limit)))
        (narrow-to-region (point-min) limit)
-       (mail-fetch-field header)))))
+       (apply 'mail-fetch-field args)))))
 
 (defun rmail-header-get-keywords ()
   "Return the keywords in the current message.