X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/89953e3e19d3e5fb0f5c9d47e3905fde27ab08cb..965f7310fec535d17e04464019de4ca75fa0afec:/IkiWiki/Plugin/aggregate.pm diff --git a/IkiWiki/Plugin/aggregate.pm b/IkiWiki/Plugin/aggregate.pm index f47dc58b3..07c557bcd 100644 --- a/IkiWiki/Plugin/aggregate.pm +++ b/IkiWiki/Plugin/aggregate.pm @@ -420,11 +420,11 @@ sub expire () { #{{{ next unless $feed->{expireage} || $feed->{expirecount}; my $count=0; my %seen; - foreach my $item (sort { $IkiWiki::pagectime{$b->{page}} <=> $IkiWiki::pagectime{$a->{page}} } + foreach my $item (sort { ($IkiWiki::pagectime{$b->{page}} || 0) <=> ($IkiWiki::pagectime{$a->{page}} || 0) } grep { exists $_->{page} && $_->{feed} eq $feed->{name} } values %guids) { if ($feed->{expireage}) { - my $days_old = (time - $IkiWiki::pagectime{$item->{page}}) / 60 / 60 / 24; + my $days_old = (time - ($IkiWiki::pagectime{$item->{page}} || 0) / 60 / 60 / 24; if ($days_old > $feed->{expireage}) { debug(sprintf(gettext("expiring %s (%s days old)"), $item->{page}, int($days_old))); @@ -520,10 +520,10 @@ sub aggregate (@) { #{{{ } foreach my $entry ($f->entries) { - my $content=$content=$entry->content; + my $content=$content=$entry->content->body; # atom feeds may have no content, only a summary - if (! defined $content) { - $content=$entry->summary; + if (! defined $content && ref $entry->summary) { + $content=$entry->summary->body; } add_page( @@ -531,7 +531,7 @@ sub aggregate (@) { #{{{ copyright => $f->copyright, title => defined $entry->title ? decode_entities($entry->title) : "untitled", link => $entry->link, - content => defined $content ? $content->body : "", + content => defined $content ? $content : "", guid => defined $entry->id ? $entry->id : time."_".$feed->{name}, ctime => $entry->issued ? ($entry->issued->epoch || time) : time, );