Fixes a bug that prevented matching deleted pages when using the page() PageSpec.

master
Joey Hess 2010-08-04 08:24:47 -04:00
parent c2f2349de4
commit 5d88146861
3 changed files with 12 additions and 7 deletions

View File

@ -2439,13 +2439,16 @@ sub match_internal ($$;@) {
sub match_page ($$;@) {
my $page=shift;
my $match=match_glob($page, shift, @_);
if ($match && ! (exists $IkiWiki::pagesources{$page}
&& defined IkiWiki::pagetype($IkiWiki::pagesources{$page}))) {
return IkiWiki::FailReason->new("$page is not a page");
}
else {
return $match;
if ($match) {
my $source=exists $IkiWiki::pagesources{$page} ?
$IkiWiki::pagesources{$page} :
$IkiWiki::delpagesources{$page};
my $type=defined $source ? IkiWiki::pagetype($source) : undef;
if (! defined $type) {
return IkiWiki::FailReason->new("$page is not a page");
}
}
return $match;
}
sub match_link ($$;@) {

2
debian/changelog vendored
View File

@ -10,6 +10,8 @@ ikiwiki (3.20100723) UNRELEASED; urgency=low
have been disabled.
* Use Digest::SHA built into perl rather than external Digest::SHA1
to simplify dependencies. Closes: #591040
* Fixes a bug that prevented matching deleted pages when using the page()
PageSpec.
-- Joey Hess <joeyh@debian.org> Fri, 23 Jul 2010 14:00:32 -0400

View File

@ -3,4 +3,4 @@ Deleting that post removed it, but the front page did not get the re-generated,
--[[liw]]
> This is a bug involving the `page()` pagespec. Deleted
> pages matching this pagespec are not noticed. --[[Joey]]
> pages matching this pagespec are not noticed. --[[Joey]] [[done]]