aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki.pm
diff options
context:
space:
mode:
authorJoey Hess <joey@gnu.kitenet.net>2009-10-09 13:28:41 -0400
committerJoey Hess <joey@gnu.kitenet.net>2009-10-09 13:28:41 -0400
commit3807aa298cc3a6ad7fbb39c3ff13fd5916a5c469 (patch)
tree9c7048476681d006f11c75e438efc015028a5af9 /IkiWiki.pm
parent6f2cc5ac8cc7e76b3faf20cd7516f82bcb3de7ed (diff)
downloadikiwiki-3807aa298cc3a6ad7fbb39c3ff13fd5916a5c469.tar
ikiwiki-3807aa298cc3a6ad7fbb39c3ff13fd5916a5c469.tar.gz
fix pagespec_match_list handling of list parameter
Diffstat (limited to 'IkiWiki.pm')
-rw-r--r--IkiWiki.pm12
1 files changed, 8 insertions, 4 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm
index 49c76c4d4..232d3e77b 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -1986,11 +1986,15 @@ sub pagespec_match_list ($$;@) {
if $@ || ! defined $sub;
my @candidates;
- if (exists $params{filter}) {
- @candidates=grep { ! $params{filter}->($_) } keys %pagesources;
+ if (exists $params{list}) {
+ @candidates=exists $params{filter}
+ ? grep { ! $params{filter}->($_) } @{$params{list}}
+ : @{$params{list}};
}
else {
- @candidates=keys %pagesources;
+ @candidates=exists $params{filter}
+ ? grep { ! $params{filter}->($_) } keys %pagesources
+ : keys %pagesources;
}
if (defined $params{sort}) {
@@ -2023,7 +2027,7 @@ sub pagespec_match_list ($$;@) {
# clear params, remainder is passed to pagespec
my $num=$params{num};
- delete @params{qw{num deptype reverse sort filter}};
+ delete @params{qw{num deptype reverse sort filter list}};
my @matches;
my $firstfail;