use pagespec_match_list

master
Simon McVittie 2009-08-25 00:21:19 +01:00
parent 275dd5c4ea
commit df8ab3406d
1 changed files with 11 additions and 9 deletions

View File

@ -462,11 +462,14 @@ sub refresh () {
foreach my $d (keys %{$depends{$p}}) {
# only consider internal files
# if the page explicitly depends on such files
foreach my $file (@changed, $d=~/internal\(/ ? @internal : ()) {
next if $f eq $file;
my $page=pagename($file);
if (pagespec_match($page, $d, location => $p)) {
debug(sprintf(gettext("building %s, which depends on %s"), $f, $page));
my @pages = map {
pagename($_)
} grep {
$_ ne $f
} (@changed, $d =~ /internal\(/ ? @internal : ());
@pages = pagespec_match_list(\@pages, $d, location => $p);
if (@pages) {
debug(sprintf(gettext("building %s, which depends on %s"), $f, $pages[0]));
render($f);
$rendered{$f}=1;
next F;
@ -474,7 +477,6 @@ sub refresh () {
}
}
}
}
# handle backlinks; if a page has added/removed links,
# update the pages it links to