Hi Mark, I confirm this bug: "%" in links breaks the export.
The attached patch is a quick fix, but it needs to be double-checked and surely amended. Also, I didn't check other link-related functions. Thanks for reporting this bad bug,
diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index aa30cf1..650b7cc 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -1748,7 +1748,9 @@ DESC is the description part of the link, or the empty string. INFO is a plist holding contextual information. See `org-export-data'." (let* ((type (org-element-property :type link)) - (raw-path (org-element-property :path link)) + (raw-path (org-latex-plain-text + (org-link-escape (org-element-property :path link)) + info)) ;; Ensure DESC really exists, or set it to nil. (desc (and (not (string= desc "")) desc)) (imagep (org-export-inline-image-p
-- Bastien