diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-08-04 01:57:32 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-08-04 01:57:32 +0000 |
commit | d3713b01649a834c8977d387cddb02c24a3fa2d5 (patch) | |
tree | 1cdafdfc7a3f243de86f3d70ba772f417b9cc55b /IkiWiki | |
parent | 5077165953e9460e189ae5d8dcb9533f8944d272 (diff) |
* Encode link and guid urls in rss feeds to avoid illegal utf8 slipping in.
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/inline.pm | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm index 71e71c02e..4410a2017 100644 --- a/IkiWiki/Plugin/inline.pm +++ b/IkiWiki/Plugin/inline.pm @@ -5,6 +5,7 @@ package IkiWiki::Plugin::inline; use warnings; use strict; use IkiWiki; +use HTML::Entities q{encode_entities_numeric}; sub import { #{{{ IkiWiki::hook(type => "preprocess", id => "inline", @@ -162,7 +163,7 @@ sub genrss ($@) { #{{{ my $page=shift; my @pages=@_; - my $url="$config{url}/".htmlpage($page); + my $url=encode_entities_numeric("$config{url}/".htmlpage($page)); my $itemtemplate=template("rssitem.tmpl", blind_cache => 1, die_on_bad_params => 0); @@ -170,10 +171,12 @@ sub genrss ($@) { #{{{ foreach my $p (@pages) { next unless exists $renderedfiles{$p}; + my $u=encode_entities_numeric("$config{url}/$renderedfiles{$p}"); + $itemtemplate->param( title => pagetitle(basename($p)), - url => "$config{url}/$renderedfiles{$p}", - permalink => "$config{url}/$renderedfiles{$p}", + url => $u, + permalink => $u, pubdate => date_822($pagectime{$p}), content => absolute_urls(get_inline_content($p, $page), $url), ); |