- my @broken;
- foreach my $page (%IkiWiki::links) {
- if (IkiWiki::globlist_match($page, $params{pages})) {
- foreach my $link (@{$IkiWiki::links{$page}}) {
- next if $link =~ /.*\/discussion/i && $IkiWiki::config{discussion};
- my $bestlink=IkiWiki::bestlink($page, $link);
- next if length $bestlink;
- push @broken,
- IkiWiki::htmllink($page, $params{destpage}, $link, 1).
- " in ".
- IkiWiki::htmllink($params{page}, $params{destpage}, $page, 1);
- }
+ my %broken;
+ foreach my $page (pagespec_match_list([keys %links],
+ $params{pages}, location => $params{page})) {
+ my $discussion=gettext("discussion");
+ my %seen;
+ foreach my $link (@{$links{$page}}) {
+ next if $seen{$link};
+ $seen{$link}=1;
+ next if $link =~ /.*\/\Q$discussion\E/i && $config{discussion};
+ my $bestlink=bestlink($page, $link);
+ next if length $bestlink;
+ push @{$broken{$link}}, $page;