0
0
Fork 1
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-09-29 18:36:26 +00:00

org-src-font-lock-fontify-block: Do not transfer non-existing properties

* lisp/org-src.el (org-src-font-lock-fontify-block): Never set
font-lock properties when `get-text-property' returns nil.  This
usually means that the property is not present in the position
property list.  The old behavior could, for example, set 'invisible
property to nil explicitly and prevent folding completely.

Fixes https://list.orgmode.org/CA+G3_PN6RvcRcvN2fM=vfK1K6UsT=nNPJ7SUucmA1Ypc=Emorg@mail.gmail.com/T/#u
This commit is contained in:
Ihor Radchenko 2022-05-28 09:35:32 +08:00
parent 5e0afb669b
commit 66528468a1
No known key found for this signature in database
GPG key ID: 6470762A7DA11D8B

View file

@ -643,9 +643,10 @@ as `org-src-fontify-natively' is non-nil."
;; preserve, e.g., composition.
(dolist (prop (cons 'face font-lock-extra-managed-props))
(let ((new-prop (get-text-property pos prop)))
(put-text-property
(+ start (1- pos)) (1- (+ start next)) prop new-prop
org-buffer)))
(when new-prop
(put-text-property
(+ start (1- pos)) (1- (+ start next)) prop new-prop
org-buffer))))
(setq pos next)))
(set-buffer-modified-p nil))
;; Add Org faces.