From 4fed1740bd3d843e21f18b4eac599c203f5378fa Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Sat, 29 Dec 2007 19:12:30 +0000 Subject: [PATCH] (font-lock-prepend-text-property, font-lock-append-text-property): Canonicalize the face and font-lock-face properties. --- lisp/ChangeLog | 4 ++++ lisp/font-lock.el | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 5da1bb7b6c6..0ab19236752 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2007-12-29 Richard Stallman + * font-lock.el (font-lock-prepend-text-property) + (font-lock-append-text-property): Canonicalize the face and + font-lock-face properties. + * faces.el (facep): Doc fix. * startup.el (fancy-startup-tail, fancy-about-text) diff --git a/lisp/font-lock.el b/lisp/font-lock.el index 6bc5fd8716f..bc7e7f1e325 100644 --- a/lisp/font-lock.el +++ b/lisp/font-lock.el @@ -1295,6 +1295,12 @@ Optional argument OBJECT is the string or buffer containing the text." (while (/= start end) (setq next (next-single-property-change start prop object end) prev (get-text-property start prop object)) + ;; Canonicalize old forms of face property. + (and (memq prop '(face font-lock-face)) + (listp prev) + (or (keywordp (car prev)) + (memq (car prev) '(foreground-color background-color))) + (setq prev (list prev))) (put-text-property start next prop (append val (if (listp prev) prev (list prev))) object) @@ -1309,6 +1315,12 @@ Optional argument OBJECT is the string or buffer containing the text." (while (/= start end) (setq next (next-single-property-change start prop object end) prev (get-text-property start prop object)) + ;; Canonicalize old forms of face property. + (and (memq prop '(face font-lock-face)) + (listp prev) + (or (keywordp (car prev)) + (memq (car prev) '(foreground-color background-color))) + (setq prev (list prev))) (put-text-property start next prop (append (if (listp prev) prev (list prev)) val) object) -- 2.39.2