Browse Source

ox-ascii: Fix export with broken links

* lisp/ox-ascii.el (org-ascii--describe-links): Skip broken links.
Ihor Radchenko 2 years ago
parent
commit
4631790fb9
1 changed files with 11 additions and 6 deletions
  1. 11 6
      lisp/ox-ascii.el

+ 11 - 6
lisp/ox-ascii.el

@@ -948,12 +948,17 @@ channel."
 	 (when description
 	 (when description
 	   (let ((dest (if (equal type "fuzzy")
 	   (let ((dest (if (equal type "fuzzy")
 			   (org-export-resolve-fuzzy-link link info)
 			   (org-export-resolve-fuzzy-link link info)
-			 (org-export-resolve-id-link link info))))
-	     (concat
-	      (org-ascii--fill-string
-	       (format "[%s] %s" anchor (org-ascii--describe-datum dest info))
-	       width info)
-	      "\n\n"))))
+                         ;; Ignore broken links.  On broken link,
+                         ;; `org-export-resolve-id-link' will throw an
+                         ;; error and `ignore-error' will return nil.
+			 (ignore-error 'org-link-broken
+                           (org-export-resolve-id-link link info)))))
+             (when dest
+	       (concat
+	        (org-ascii--fill-string
+	         (format "[%s] %s" anchor (org-ascii--describe-datum dest info))
+	         width info)
+	        "\n\n")))))
 	;; Do not add a link that cannot be resolved and doesn't have
 	;; Do not add a link that cannot be resolved and doesn't have
 	;; any description: destination is already visible in the
 	;; any description: destination is already visible in the
 	;; paragraph.
 	;; paragraph.