1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-30 04:10:54 -08:00

(font-lock-change-mode): Avoid changing buffer state in any way.

This commit is contained in:
Andreas Schwab 2002-08-31 17:22:46 +00:00
parent 97acc803a9
commit 523d3bf425
2 changed files with 16 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2002-08-31 Andreas Schwab <schwab@suse.de>
* font-core.el (font-lock-change-mode): Avoid changing buffer
state in any way.
2002-08-30 Edward M. Reingold <reingold@emr.cs.iit.edu>
* calendar/diary-lib.el (diary-mail-entries): Don't overwrite

View file

@ -218,11 +218,20 @@ your own function which is called when `font-lock-mode' is toggled via
;; Get rid of fontification for the old major mode.
;; We do this when changing major modes.
(defun font-lock-change-mode ()
(let ((inhibit-read-only t))
(let ((inhibit-read-only t)
(inhibit-point-motion-hooks t)
(inhibit-modification-hooks t)
(deactivate-mark nil)
(buffer-file-name nil)
(buffer-file-truename nil)
(buffer-undo-list t)
(modified (buffer-modified-p)))
(save-restriction
(widen)
(remove-list-of-text-properties
(point-min) (point-max) '(font-lock-face))))
(point-min) (point-max) '(font-lock-face)))
(unless modified
(restore-buffer-modified-p nil)))
(when font-lock-defaults
(font-lock-unfontify-buffer)))