From bc607a9af46095035b1c0271b73d61ba4d6608d6 Mon Sep 17 00:00:00 2001 From: David Maus Date: Sun, 11 Dec 2011 10:53:14 +0100 Subject: [PATCH] Avoid erroneous normalization of bracket link parts * org-exp.el (org-export-normalize-links): Mark bracket links before normalization to avoid erroneous normalization of bracket link parts. This fixes a bug reported by M. Bauer at and allows proper normalization of bracket links with a link in the query part, e.g. [[http://example.tld?q=http://example.tld][Example]] --- lisp/org-exp.el | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lisp/org-exp.el b/lisp/org-exp.el index b7d447d08..eae5be7e9 100644 --- a/lisp/org-exp.el +++ b/lisp/org-exp.el @@ -2083,10 +2083,11 @@ Also, store forced alignment information found in such lines." (re-angle-link (concat "\\([^[]\\)" org-angle-link-re)) nodesc) (goto-char (point-min)) + (while (re-search-forward org-bracket-link-regexp nil t) + (put-text-property (match-beginning 0) (match-end 0) 'org-normalized-link t)) + (goto-char (point-min)) (while (re-search-forward re-plain-link nil t) - (unless (org-string-match-p - "\\[\\[\\S-+:\\S-*?\\<" - (buffer-substring (point-at-bol) (match-beginning 0))) + (unless (get-text-property (match-beginning 0) 'org-normalized-link) (goto-char (1- (match-end 0))) (org-if-unprotected-at (1+ (match-beginning 0)) (let* ((s (concat (match-string 1)