* lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#29767

This commit is contained in:
Stefan Monnier 2018-01-11 10:11:39 -05:00
parent 80463a43da
commit dbb4aac212

View file

@ -291,6 +291,14 @@ END) suitable for `syntax-propertize-function'."
;; (message "Needs to syntax-propertize from %s to %s"
;; syntax-propertize--done pos)
(set (make-local-variable 'parse-sexp-lookup-properties) t)
(when (< syntax-propertize--done (point-min))
;; *Usually* syntax-propertize is called via syntax-ppss which
;; takes care of adding syntax-ppss-flush-cache to b-c-f, but this
;; is not *always* the case, so since we share a single "flush" function
;; between syntax-ppss and syntax-propertize, we also have to make
;; sure the flush function is installed here (bug#29767).
(add-hook 'before-change-functions
#'syntax-ppss-flush-cache t t))
(save-excursion
(with-silent-modifications
(make-local-variable 'syntax-propertize--done) ;Just in case!