From 2b310b32234e6193154c9850d51aaa8ed312f2df Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 25 May 2016 15:11:34 +0530 Subject: [PATCH] ox-rss: Encode characters to their XML entities * contrib/lisp/ox-rss.el (org-rss-build-channel-info, org-rss-headline): Encode disallowed characters in `title' to their XML entities The `title' field is user specified and may contain characters such as "&", "<" or ">" that are disallowed in XML. These characters should be encoded into their corresponding XML entities. --- contrib/lisp/ox-rss.el | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/contrib/lisp/ox-rss.el b/contrib/lisp/ox-rss.el index 0c4a2f2..95d20ec 100644 --- a/contrib/lisp/ox-rss.el +++ b/contrib/lisp/ox-rss.el @@ -248,12 +248,13 @@ communication channel." (format-time-string "%a, %d %b %Y %H:%M:%S %z" (org-time-string-to-time pubdate0))))) - (title (or (org-element-property :RSS_TITLE headline) - (replace-regexp-in-string - org-bracket-link-regexp - (lambda (m) (or (match-string 3 m) - (match-string 1 m))) - (org-element-property :raw-value headline)))) + (title (org-rss-plain-text + (or (org-element-property :RSS_TITLE headline) + (replace-regexp-in-string + org-bracket-link-regexp + (lambda (m) (or (match-string 3 m) + (match-string 1 m))) + (org-element-property :raw-value headline))) info)) (publink (or (and hl-perm (concat (or hl-home hl-pdir) hl-perm)) (concat @@ -318,7 +319,7 @@ as a communication channel." (defun org-rss-build-channel-info (info) "Build the RSS channel information." (let* ((system-time-locale "C") - (title (plist-get info :title)) + (title (org-rss-plain-text (or (plist-get info :title) "") info)) (email (org-export-data (plist-get info :email) info)) (author (and (plist-get info :with-author) (let ((auth (plist-get info :author))) -- 2.8.2