Subject: bug#1222: overlay display inherits face properties from buffer

From: Glenn Morris <[email-masked]>
Date: Tue, 21 Oct 2008 21:10:26 -0400

This issue also affects before- and after-strings, albeit in slightly
different ways:

Example:

(let ((buff (generate-new-buffer "overlay test"))
      o)
  (with-current-buffer buff
    (insert (propertize "text" 'face '(:background "red")))
    (setq o (make-overlay (point-min) (point-max)))
    (overlay-put o 'display "display")
    (overlay-put o 'before-string "before-string")
    (overlay-put o 'after-string "after-string")
    (insert (propertize "more" 'face '(:background "green")))
    (pop-to-buffer buff)))

"before-string" and "display" have a red background, "after-string"
has a green background.

Ideally, face properties should not be inherited from the buffer in
this way.