diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2015-02-11 16:37:49 -0500 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2015-02-11 16:37:49 -0500 |
commit | 517fc7b612344535087dc54178bd464fe9a74d1f (patch) | |
tree | 5c482c208d15f8680f70e038ec23f4e7e8253f91 | |
parent | 4fb5565d0a0cd9640a242028c92b8b4e2bd4683e (diff) | |
download | emacs-517fc7b612344535087dc54178bd464fe9a74d1f.tar.gz |
* lisp/hi-lock.el: Don't call font-lock-remove-keywords if not needed.
Fixes: debbugs:19737
(hi-lock-unface-buffer): Don't call font-lock-remove-keywords if not needed.
-rw-r--r-- | lisp/ChangeLog | 12 | ||||
-rw-r--r-- | lisp/hi-lock.el | 7 |
2 files changed, 14 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 7e45b9db64c..34e4e9d1c2b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2015-02-11 Stefan Monnier <monnier@iro.umontreal.ca> + + * hi-lock.el (hi-lock-unface-buffer): Don't call + font-lock-remove-keywords if not needed (bug#19737). + 2015-02-11 Nicolas Petton <nicolas@petton.fr> * emacs-lisp/seq.el (seq-reverse): Add a backward-compatible @@ -8,8 +13,7 @@ * frame.el (toggle-frame-maximized, toggle-frame-fullscreen): Rename frame parameter `maximized' to `fullscreen-restore'. - Restore fullwidth/-height after fullboth state. Update - doc-strings. + Restore fullwidth/-height after fullboth state. Update doc-strings. 2015-02-11 Lars Ingebrigtsen <larsi@gnus.org> @@ -23,8 +27,8 @@ * net/shr.el (shr-use-fonts): New variable. (shr-fill-text): Rename from "fold". - (shr-pixel-column, shr-pixel-region, shr-string-pixel-width): New - functions. + (shr-pixel-column, shr-pixel-region, shr-string-pixel-width): + New functions. (shr-insert): Just insert, don't fill the text. Filling is now done afterwards per display unit. (shr-fill-lines, shr-fill-line): New functions to fill text on a diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el index 65a4561e3ab..d74664a845f 100644 --- a/lisp/hi-lock.el +++ b/lisp/hi-lock.el @@ -596,7 +596,12 @@ then remove all hi-lock highlighting." ;; Make `face' the next one to use by default. (when (symbolp face) ;Don't add it if it's a list (bug#13297). (add-to-list 'hi-lock--unused-faces (face-name face)))) - (font-lock-remove-keywords nil (list keyword)) + ;; FIXME: Calling `font-lock-remove-keywords' causes + ;; `font-lock-specified-p' to go from nil to non-nil (because it + ;; calls font-lock-set-defaults). This is yet-another bug in + ;; font-lock-add/remove-keywords, which we circumvent here by + ;; testing `font-lock-fontified' (bug#19737). + (if font-lock-fontified (font-lock-remove-keywords nil (list keyword))) (setq hi-lock-interactive-patterns (delq keyword hi-lock-interactive-patterns)) (remove-overlays |