diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-05-08 21:22:14 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-05-08 21:22:14 +0000 |
commit | 687928ead25cb8f62fdfc58c2e126264e0fb149a (patch) | |
tree | 76106dec33e3da63b086eb49c941f1ce84c28d96 | |
parent | 0041e9380838a5a8491674585e5dc6067763ebf6 (diff) |
* Make testpagespec more robust, including checking for missing/bad
parameters, and detecting if a pagespec failed to compile.
-rw-r--r-- | IkiWiki/Plugin/testpagespec.pm | 9 | ||||
-rw-r--r-- | debian/changelog | 4 |
2 files changed, 12 insertions, 1 deletions
diff --git a/IkiWiki/Plugin/testpagespec.pm b/IkiWiki/Plugin/testpagespec.pm index 4966f4e10..a0bb2ff31 100644 --- a/IkiWiki/Plugin/testpagespec.pm +++ b/IkiWiki/Plugin/testpagespec.pm @@ -12,6 +12,12 @@ sub import { #{{{ sub preprocess (@) { #{{{ my %params=@_; + foreach my $param (qw{match pagespec}) { + if (! exists $params{$param}) { + return "[[testpagespec missing $param parameter]]"; + } + } + add_depends($params{page}, $params{pagespec}); my $ret=pagespec_match($params{match}, $params{pagespec}, @@ -19,6 +25,9 @@ sub preprocess (@) { #{{{ if ($ret) { return "match: $ret"; } + elsif (! defined $ret) { + return "match failed: $@"; + } else { return "no match: $ret"; } diff --git a/debian/changelog b/debian/changelog index 25d36abc5..7da9b9c66 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,8 +7,10 @@ ikiwiki (2.1) UNRELEASED; urgency=low * Fix a bug that prevented clearing email or subscriptions. * Improve handling of edits of locked pages by users who are not yet signed in. + * Make testpagespec more robust, including checking for missing/bad + parameters, and detecting if a pagespec failed to compile. - -- Joey Hess <joeyh@debian.org> Mon, 07 May 2007 02:02:53 -0400 + -- Joey Hess <joeyh@debian.org> Tue, 08 May 2007 17:21:13 -0400 ikiwiki (2.00) unstable; urgency=low |