From f454672ba3981c4541beb5018a02ffb08ed81849 Mon Sep 17 00:00:00 2001
From: Glenn Morris <rgm@gnu.org>
Date: Wed, 17 Mar 2010 21:49:35 -0700
Subject: [PATCH] Restore user option rmail-highlight-face.

* mail/rmail.el (rmail-highlight-face): Restore option deleted
2008-02-13 without comment; mark it obsolete.
(rmail-highlight-headers): Use rmail-highlight-face once more.
---
 lisp/ChangeLog     |  6 ++++++
 lisp/mail/rmail.el | 25 ++++++++++++++++++++++---
 2 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 832297eded5..45cfb194df2 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
+2010-03-18  Glenn Morris  <rgm@gnu.org>
+
+	* mail/rmail.el (rmail-highlight-face): Restore option deleted
+	2008-02-13 without comment; mark it obsolete.
+	(rmail-highlight-headers): Use rmail-highlight-face once more.
+
 2010-03-16  Chong Yidong  <cyd@stupidchicken.com>
 
 	* woman.el (woman2-process-escapes): Only consume the newline if
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index a737b99c29e..630c729703b 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -381,6 +381,20 @@ The variable `rmail-highlighted-headers' specifies which headers."
   :group 'rmail-headers
   :version "22.1")
 
+;; This was removed in Emacs 23.1 with no notification, an unnecessary
+;; incompatible change.
+(defcustom rmail-highlight-face 'rmail-highlight
+  "Face used by Rmail for highlighting headers."
+  ;; Note that nil doesn't actually mean use the default face, it
+  ;; means use either bold or highlight. It's not worth fixing this
+  ;; now that this is obsolete.
+  :type '(choice (const :tag "Default" nil)
+		 face)
+  :group 'rmail-headers)
+(make-obsolete-variable 'rmail-highlight-face
+			"customize the face `rmail-highlight' instead."
+			"23.2")
+
 (defface rmail-header-name
   '((t (:inherit font-lock-function-name-face)))
   "Face to use for highlighting the header names.
@@ -2883,7 +2897,7 @@ using the coding system CODING."
 
 (defun rmail-highlight-headers ()
   "Highlight the headers specified by `rmail-highlighted-headers'.
-Uses the face `rmail-highlight'."
+Uses the face specified by `rmail-highlight-face'."
   (if rmail-highlighted-headers
       (save-excursion
 	(search-forward "\n\n" nil 'move)
@@ -2891,6 +2905,11 @@ Uses the face `rmail-highlight'."
 	  (narrow-to-region (point-min) (point))
 	  (let ((case-fold-search t)
 		(inhibit-read-only t)
+		;; When rmail-highlight-face is removed, just
+		;; use 'rmail-highlight here.
+		(face (or rmail-highlight-face
+			  (if (face-differs-from-default-p 'bold)
+			      'bold 'highlight)))
 		;; List of overlays to reuse.
 		(overlays rmail-overlay-list))
 	    (goto-char (point-min))
@@ -2909,12 +2928,12 @@ Uses the face `rmail-highlight'."
 		    (progn
 		      (setq overlay (car overlays)
 			    overlays (cdr overlays))
-		      (overlay-put overlay 'face 'rmail-highlight)
+		      (overlay-put overlay 'face face)
 		      (move-overlay overlay beg (point)))
 		  ;; Make a new overlay and add it to
 		  ;; rmail-overlay-list.
 		  (setq overlay (make-overlay beg (point)))
-		  (overlay-put overlay 'face 'rmail-highlight)
+		  (overlay-put overlay 'face face)
 		  (setq rmail-overlay-list
 			(cons overlay rmail-overlay-list))))))))))
 
-- 
2.39.5