From ea34d1b3a02223e3032d91ad9269d70dcfd5f0b6 Mon Sep 17 00:00:00 2001 From: mdipierro Date: Sun, 31 Mar 2013 19:11:31 -0500 Subject: [PATCH] fixed issue 1422, rss serializer encoding, thanks neoecos --- VERSION | 2 +- gluon/serializers.py | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/VERSION b/VERSION index 865b18db..9cddb74f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -Version 2.4.5-stable+timestamp.2013.03.31.19.08.37 +Version 2.4.5-stable+timestamp.2013.03.31.19.10.43 diff --git a/gluon/serializers.py b/gluon/serializers.py index de21ddbc..9b81391f 100644 --- a/gluon/serializers.py +++ b/gluon/serializers.py @@ -160,18 +160,19 @@ def rss(feed): if not 'entries' in feed and 'items' in feed: feed['entries'] = feed['items'] now = datetime.datetime.now() - rss = rss2.RSS2(title=str(feed.get('title', '(notitle)')), - link=str(feed.get('link', None)), - description=str(feed.get('description', '')), + rss = rss2.RSS2(title=str(feed.get('title', '(notitle)').encode('utf-8', 'replace')), + link=str(feed.get('link', None).encode('utf-8', 'replace')), + description=str(feed.get('description', '').encode('utf-8', 'replace')), lastBuildDate=feed.get('created_on', now), items=[rss2.RSSItem( - title=str(entry.get('title', '(notitle)')), - link=str(entry.get('link', None)), - description=str(entry.get('description', '')), + title=str(entry.get('title', '(notitle)').encode('utf-8', 'replace')), + link=str(entry.get('link', None).encode('utf-8', 'replace')), + description=str(entry.get('description', '').encode('utf-8', 'replace')), pubDate=entry.get('created_on', now) ) for entry in feed.get('entries', [])]) return rss.to_xml(encoding='utf-8') + def yaml(data): if have_yaml: return yamlib.dump(data)