From 747201272b8ad565d1703733ae8a4041a68f4746 Mon Sep 17 00:00:00 2001 From: cnngimenez Date: Mon, 10 Jan 2022 15:30:46 -0300 Subject: [PATCH] Bug fixed when section has no text but has properties. An error appeared when a header has no text but it has properties. For instance: ```org * A header :PROPERTIES: :ID: 7159694c-0e06-41d6-a2fc-1ae3f9ba0321 :END: * Another header ``` "A header" is processed by `org-gemini-section` and throws error when exporting: `contents` parameter is nil instead of empty string. "Another header" is considered a headline and not a section. --- ox-gemini.el | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ox-gemini.el b/ox-gemini.el index cb8322f..aaf5a37 100644 --- a/ox-gemini.el +++ b/ox-gemini.el @@ -116,7 +116,9 @@ Note: the footer with the actual links are handled in "Transcode a SECTION element from Org to GEMINI. CONTENTS is the contents of the section. INFO is a plist holding contextual information." - (let ((links + ;; CONTENTS is nil when the section has no text but it has properties setted. + (let ((contents-str (or contents "")) ;; ensure that contents is a string. + (links (and (plist-get info :ascii-links-to-notes) ;; Take care of links in first section of the document. (not (org-element-lineage section '(headline))) @@ -125,8 +127,8 @@ contextual information." (org-ascii--current-text-width section info) info)))) (org-remove-indentation - (if (not (org-string-nw-p links)) contents - (concat (org-element-normalize-string contents) "\n\n" links)) + (if (not (org-string-nw-p links)) contents-str + (concat (org-element-normalize-string contents-str) "\n\n" links)) ;; Do not apply inner margin if parent headline is low level. (let ((headline (org-export-get-parent-headline section))) (if (or (not headline) (org-export-low-level-p headline info)) 0