po plugin: bugfix - only refresh POT/PO for translatable pages
[ikiwiki.git] / IkiWiki / Plugin / po.pm
index 42391089b3ed9a04d12ba18cad0663ceeecbb46c..ca26101b7c52c9a1a4d6b7ce38e0100196eccea0 100644 (file)
@@ -138,14 +138,17 @@ sub needsbuild () { #{{{
                istranslation($page);
        }
 
+       # refresh POT and PO files as needed
        foreach my $file (@$needsbuild) {
                my $page=pagename($file);
-               refreshpot(srcfile($file)) if (istranslatable($page));
-               my @pofiles;
-               foreach my $lang (keys %{$translations{$page}}) {
-                       push @pofiles, $pagesources{$translations{$page}{$lang}};
+               if (istranslatable($page)) {
+                       refreshpot(srcfile($file));
+                       my @pofiles;
+                       foreach my $lang (keys %{$translations{$page}}) {
+                               push @pofiles, $pagesources{$translations{$page}{$lang}};
+                       }
+                       refreshpofiles(srcfile($file), map { srcfile($_) } @pofiles);
                }
-               refreshpofiles(srcfile($file), map { srcfile($_) } @pofiles);
        }
 } #}}}