summaryrefslogtreecommitdiff
path: root/lisp/jit-lock.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/jit-lock.el')
-rw-r--r--lisp/jit-lock.el17
1 files changed, 9 insertions, 8 deletions
diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el
index db41a15595f..0e1c8de8d61 100644
--- a/lisp/jit-lock.el
+++ b/lisp/jit-lock.el
@@ -199,11 +199,14 @@ the variable `jit-lock-stealth-nice'."
;; Turn Just-in-time Lock mode on.
(jit-lock-mode
+ ;; Mark the buffer for refontification
+ ;; (in case spurious `fontified' text-props were left around).
+ (jit-lock-fontify-buffer)
+
;; Setting `font-lock-fontified' makes font-lock believe the
;; buffer is already fontified, so that it won't highlight
;; the whole buffer or bail out on a large buffer.
- (make-local-variable 'font-lock-fontified)
- (setq font-lock-fontified t)
+ (set (make-local-variable 'font-lock-fontified) t)
;; Setup JIT font-lock-fontify-buffer.
(unless jit-lock-saved-fontify-buffer-function
@@ -259,12 +262,10 @@ the variable `jit-lock-stealth-nice'."
;; things like CWarn mode which adds/removes a few keywords and
;; does a refontify (which takes ages on large files).
(defun jit-lock-fontify-buffer ()
- (if (not (and font-lock-mode jit-lock-mode))
- (funcall jit-lock-saved-fontify-buffer-function)
- (with-buffer-prepared-for-font-lock
- (save-restriction
- (widen)
- (add-text-properties (point-min) (point-max) '(fontified nil))))))
+ (with-buffer-prepared-for-font-lock
+ (save-restriction
+ (widen)
+ (add-text-properties (point-min) (point-max) '(fontified nil)))))
;;; On demand fontification.