From: intrigeri <intrigeri@boum.org>
Date: Thu, 13 Nov 2008 00:07:52 +0000 (+0100)
Subject: po(change): avoid losing information before guessing the same...
X-Git-Tag: 3.15~327
X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/commitdiff_plain/cb1fe44f5d1b7154ee7d21f00fa6ecf4972815a7

po(change): avoid losing information before guessing the same...

Signed-off-by: intrigeri <intrigeri@boum.org>
---

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;
 		}