# HG changeset patch # User Stefan Monnier # Date 1235082244 0 # Node ID f90f4b810b0320265d012d63c767a87b2fc78619 # Parent 69c0814ddb4e5ddb66021f0f4051d7a65274279a (font-lock-fontify-syntactic-keywords-region): Make sure we stop when we reach the limit. diff -r 69c0814ddb4e -r f90f4b810b03 lisp/ChangeLog --- a/lisp/ChangeLog Thu Feb 19 22:18:16 2009 +0000 +++ b/lisp/ChangeLog Thu Feb 19 22:24:04 2009 +0000 @@ -1,5 +1,8 @@ 2009-02-19 Stefan Monnier + * font-lock.el (font-lock-fontify-syntactic-keywords-region): + Make sure we stop when we reach the limit. + * progmodes/sh-script.el (sh-font-lock-quoted-subshell): ' inside a "..." does not quote anything. diff -r 69c0814ddb4e -r f90f4b810b03 lisp/font-lock.el --- a/lisp/font-lock.el Thu Feb 19 22:18:16 2009 +0000 +++ b/lisp/font-lock.el Thu Feb 19 22:24:04 2009 +0000 @@ -1473,9 +1473,10 @@ ;; Find an occurrence of `matcher' from `start' to `end'. (setq keyword (car keywords) matcher (car keyword)) (goto-char start) - (while (if (stringp matcher) - (re-search-forward matcher end t) - (funcall matcher end)) + (while (and (< (point) end) + (if (stringp matcher) + (re-search-forward matcher end t) + (funcall matcher end))) ;; Apply each highlight to this instance of `matcher', which may be ;; specific highlights or more keywords anchored to `matcher'. (setq highlights (cdr keyword))