emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug: [patch] fix: ox-rss died when an entry had an empty date [ ( @


From: Kyle Meyer
Subject: Re: Bug: [patch] fix: ox-rss died when an entry had an empty date [ ( @ /home/arne/.guix-profile/share/emacs/site-lisp/)]
Date: Sun, 10 Jan 2021 23:08:02 GMT

Dr. Arne Babenhauserheide writes:

> When creating an RSS feed, org-publish broke for me with
>
>   signal(error ("Not an Org time string: "))
>   error("Not an Org time string: %s" "")
>   org-parse-time-string("")
>   org-time-string-to-time("")
[...]
> Maybe relevant: I have date enabled in options.
> #+OPTIONS: date:t

I'm not an ox-rss user and don't know if there are more realistic ways
to hit this error, but I was able to trigger it by taking an already
exported buffer of

--8<---------------cut here---------------start------------->8---
* h1
  :PROPERTIES:
  :ID:       76841adc-b233-4f6d-8446-3478f263544b
  :PUBDATE:  <2021-01-10 Sun 17:46>
  :END:
--8<---------------cut here---------------end--------------->8---

and then setting PUBDATE to an empty string and exporting again.

I'm not sure if the error you see is indicative of a larger issue,
though either way guarding against an empty string as your patch does
seems fine.  But...
 
> diff --git a/contrib/lisp/ox-rss.el b/contrib/lisp/ox-rss.el
> index 299d22086..97a4bfc8f 100644
> --- a/contrib/lisp/ox-rss.el
> +++ b/contrib/lisp/ox-rss.el
> @@ -245,7 +245,7 @@ communication channel."
>                       (or (org-element-property :CATEGORY headline) "") info))
>            (pubdate0 (org-element-property :PUBDATE headline))
>            (pubdate (let ((system-time-locale "C"))
> -                     (if pubdate0
> +                     (if (and pubdate0 (not (string-empty-p pubdate0))

... you're missing a closing parenthesis here.

Also, a bit downstream I see

  (if (not pubdate0) "" ;; Skip entries with no PUBDATE prop

It seems like this should be updated to look at pubdate rather than
pubdate0 to avoid "<pubDate>nil</pubDate>" for the empty string case.

What do you think?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]