branch: externals-release/org commit 6a558fc17b42911b6d01e43fcd42754345970a60 Author: TEC <t...@tecosaur.com> Commit: TEC <t...@tecosaur.com>
org: Fix potential modified src match-data issue * lisp/org.el (org-fontify-meta-lines-and-blocks-1): When this is run on a src block, a "leaky" major mode called in `org-src-font-lock-fontify-block' can modify the match data. This is problematic, as the match data already set is important for font-lock. To protect ourselves from this behaviour, we can wrap `org-src-font-lock-fontify-block' in `save-match-data' to ensure that the match data for the src block is conserved. --- lisp/org.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lisp/org.el b/lisp/org.el index be7ddcd..ae0e84c 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -5289,7 +5289,8 @@ by a #." (org-remove-flyspell-overlays-in nl-before-endline end-of-endline) (cond ((and lang (not (string= lang "")) org-src-fontify-natively) - (org-src-font-lock-fontify-block lang block-start block-end) + (save-match-data + (org-src-font-lock-fontify-block lang block-start block-end)) (add-text-properties bol-after-beginline block-end '(src-block t))) (quoting (add-text-properties