Avoid duplicating debug message for building a page due to a dependency

As per Joey's review
master
Simon McVittie 2009-08-28 15:28:52 +01:00
parent 2a7f3b91d4
commit 20a38fbf6d
1 changed files with 14 additions and 11 deletions

View File

@ -460,23 +460,22 @@ sub refresh () {
my %lcchanged = map { lc(pagename($_)) => 1 } @changed; my %lcchanged = map { lc(pagename($_)) => 1 } @changed;
# rebuild dependant pages # rebuild dependant pages
F: foreach my $f (@$files) { foreach my $f (@$files) {
next if $rendered{$f}; next if $rendered{$f};
my $p=pagename($f); my $p=pagename($f);
my $reason = undef;
if (exists $depends_exact{$p}) { if (exists $depends_exact{$p}) {
foreach my $d (keys %{$depends_exact{$p}}) { foreach my $d (keys %{$depends_exact{$p}}) {
if (exists $lcchanged{$d}) { if (exists $lcchanged{$d}) {
debug(sprintf(gettext("building %s, which depends on %s"), $f, $d)); $reason = $d;
render($f); last;
$rendered{$f}=1;
next F;
} }
} }
} }
if (exists $depends{$p}) { if (exists $depends{$p} && ! defined $reason) {
foreach my $d (keys %{$depends{$p}}) { D: foreach my $d (keys %{$depends{$p}}) {
my $sub=pagespec_translate($d); my $sub=pagespec_translate($d);
next if $@ || ! defined $sub; next if $@ || ! defined $sub;
@ -487,13 +486,17 @@ sub refresh () {
next if $file eq $f; next if $file eq $f;
my $page=pagename($file); my $page=pagename($file);
if ($sub->($page, location => $p)) { if ($sub->($page, location => $p)) {
debug(sprintf(gettext("building %s, which depends on %s"), $f, $page)); $reason = $page;
last D;
}
}
}
}
if (defined $reason) {
debug(sprintf(gettext("building %s, which depends on %s"), $f, $reason));
render($f); render($f);
$rendered{$f}=1; $rendered{$f}=1;
next F;
}
}
}
} }
} }