From cb1fe44f5d1b7154ee7d21f00fa6ecf4972815a7 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Thu, 13 Nov 2008 01:07:52 +0100 Subject: [PATCH] po(change): avoid losing information before guessing the same... Signed-off-by: intrigeri --- IkiWiki/Plugin/po.pm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm index f13093963..d92443b18 100644 --- a/IkiWiki/Plugin/po.pm +++ b/IkiWiki/Plugin/po.pm @@ -331,24 +331,25 @@ sub change(@) { #{{{ my $updated_po_files=0; # Refresh/create POT and PO files as needed. - foreach my $page (map pagename($_), @rendered) { - next unless istranslatable($page); - my $file=srcfile($pagesources{$page}); + foreach my $file (@rendered) { + next unless istranslatablefile($file); + my $page=pagename($file); + my $masterfile=srcfile($file); my $updated_pot_file=0; # Only refresh Pot file if it does not exist, or if # $pagesources{$page} was changed: don't if only the HTML was # refreshed, e.g. because of a dependency. if ((grep { $_ eq $pagesources{$page} } @origneedsbuild) - || ! -e potfile($file)) { - refreshpot($file); + || ! -e potfile($masterfile)) { + refreshpot($masterfile); $updated_pot_file=1; } my @pofiles; map { push @pofiles, $_ if ($updated_pot_file || ! -e $_); - } (pofiles($file)); + } (pofiles($masterfile)); if (@pofiles) { - refreshpofiles($file, @pofiles); + refreshpofiles($masterfile, @pofiles); map { IkiWiki::rcs_add($_); } @pofiles if ($config{rcs}); $updated_po_files=1; } -- 2.44.0