From d07d8ff416373e5a4f2d91ed1d7f9cb3a80b8439 Mon Sep 17 00:00:00 2001 From: Max Mouratov Date: Thu, 29 Aug 2019 22:48:22 +0500 Subject: [PATCH] Prevent loss of `re-search-forward' results * org.el (org-activate-links): `match-beginning' and `match-end` should be called shortly after `re-search-forward'. Otherwise, they may return values corresponding to a different invocation of `re-search-forward'. TINYCHANGE --- lisp/org.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index f383f99e5..798a8b7ef 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -5151,6 +5151,8 @@ This includes angle, plain, and bracket links." (while (re-search-forward org-link-any-re limit t) (let* ((start (match-beginning 0)) (end (match-end 0)) + (visible-start (or (match-beginning 4) (match-beginning 2))) + (visible-end (or (match-end 4) (match-end 2))) (style (cond ((eq ?< (char-after start)) 'angle) ((eq ?\[ (char-after (1+ start))) 'bracket) (t 'plain)))) @@ -5200,9 +5202,7 @@ This includes angle, plain, and bracket links." (append `(invisible ,(or (org-link-get-parameter type :display) 'org-link)) - properties)) - (visible-start (or (match-beginning 3) (match-beginning 2))) - (visible-end (or (match-end 3) (match-end 2)))) + properties))) (add-text-properties start visible-start hidden) (add-text-properties visible-start visible-end properties) (add-text-properties visible-end end hidden)