summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--IkiWiki/Plugin/po.pm12
-rw-r--r--debian/changelog1
2 files changed, 3 insertions, 10 deletions
diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm
index 02fc4a89e..f8801185e 100644
--- a/IkiWiki/Plugin/po.pm
+++ b/IkiWiki/Plugin/po.pm
@@ -1057,11 +1057,8 @@ sub commit_and_refresh ($$) {
IkiWiki::saveindex();
}
-# on success, returns the filtered content.
-# on error, if $nonfatal, warn and return undef; else, error out.
-sub po_to_markup ($$;$) {
+sub po_to_markup ($$) {
my ($page, $content) = (shift, shift);
- my $nonfatal = shift;
$content = '' unless defined $content;
$content = decode_utf8(encode_utf8($content));
@@ -1084,10 +1081,6 @@ sub po_to_markup ($$;$) {
my $fail = sub ($) {
my $msg = "po(po_to_markup) - $page : " . shift;
- if ($nonfatal) {
- warn $msg;
- return undef;
- }
error($msg, sub { unlink $infile, $outfile});
};
@@ -1108,8 +1101,7 @@ sub po_to_markup ($$;$) {
$doc->write($outfile)
or return $fail->(sprintf(gettext("failed to write %s"), $outfile));
- $content = readfile($outfile)
- or return $fail->(sprintf(gettext("failed to read %s"), $outfile));
+ $content = readfile($outfile);
# Unlinking should happen automatically, thanks to File::Temp,
# but it does not work here, probably because of the way writefile()
diff --git a/debian/changelog b/debian/changelog
index 6fbbe0a23..91f5d7807 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -13,6 +13,7 @@ ikiwiki (3.20100104) UNRELEASED; urgency=low
* git: The new git-notes feature in git 1.6.6 changes git log output
in a way that broke ikiwiki's parser if notes are added to commits.
Deal with this.
+ * po: Avoid crash when a page is empty.
-- Joey Hess <joeyh@debian.org> Mon, 04 Jan 2010 12:53:24 -0500