diff options
author | intrigeri <intrigeri@boum.org> | 2009-01-02 15:14:58 +0100 |
---|---|---|
committer | intrigeri <intrigeri@boum.org> | 2009-01-02 15:14:58 +0100 |
commit | e5222db332190de20551bb18c5c46df1632e0e1d (patch) | |
tree | 5a2929a142a3daae4c21dcba9015e6b9b4df208b | |
parent | 226abb373abc2465868ebedfff4980878da0c5a8 (diff) |
po: avoid warnings and possible bugs with nested named subroutines
Signed-off-by: intrigeri <intrigeri@boum.org>
-rw-r--r-- | IkiWiki/Plugin/po.pm | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm index 75344b4b6..80b874939 100644 --- a/IkiWiki/Plugin/po.pm +++ b/IkiWiki/Plugin/po.pm @@ -954,17 +954,17 @@ sub po_to_markup ($$;$) { DIR => File::Spec->tmpdir, UNLINK => 1)->filename; - sub failure ($) { + my $fail = sub ($) { my $msg = "po(po_to_markup) - $page : " . shift; if ($nonfatal) { warn $msg; return undef; } error($msg, sub { unlink $infile, $outfile}); - } + }; writefile(basename($infile), File::Spec->tmpdir, $content) - or return failure(sprintf(gettext("failed to write %s"), $infile)); + or return $fail->(sprintf(gettext("failed to write %s"), $infile)); my $masterfile = srcfile($pagesources{masterpage($page)}); my %options = ( @@ -976,12 +976,12 @@ sub po_to_markup ($$;$) { 'file_in_name' => [ $masterfile ], 'file_in_charset' => 'utf-8', 'file_out_charset' => 'utf-8', - ) or return failure(gettext("failed to translate")); + ) or return $fail->(gettext("failed to translate")); $doc->write($outfile) - or return failure(sprintf(gettext("failed to write %s"), $outfile)); + or return $fail->(sprintf(gettext("failed to write %s"), $outfile)); $content = readfile($outfile) - or return failure(sprintf(gettext("failed to read %s"), $outfile)); + or return $fail->(sprintf(gettext("failed to read %s"), $outfile)); # Unlinking should happen automatically, thanks to File::Temp, # but it does not work here, probably because of the way writefile() @@ -1011,14 +1011,14 @@ sub isvalidpo ($) { DIR => File::Spec->tmpdir, UNLINK => 1)->filename; - sub failure ($) { + my $fail = sub ($) { my $msg = '[po/isvalidpo] ' . shift; unlink $infile; return IkiWiki::FailReason->new("$msg"); - } + }; writefile(basename($infile), File::Spec->tmpdir, $content) - or return failure(sprintf(gettext("failed to write %s"), $infile)); + or return $fail->(sprintf(gettext("failed to write %s"), $infile)); my $res = (system("msgfmt", "--check", $infile, "-o", "/dev/null") == 0); |