diff options
-rw-r--r-- | IkiWiki.pm | 4 | ||||
-rw-r--r-- | debian/changelog | 6 | ||||
-rwxr-xr-x | t/pagespec_match.t | 4 |
3 files changed, 12 insertions, 2 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm index 68047b9b9..3802559a5 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -1247,6 +1247,10 @@ sub pagespec_translate ($) { #{{{ } } + if (! length $code) { + $code=0; + } + return eval 'sub { my $page=shift; '.$code.' }'; } #}}} diff --git a/debian/changelog b/debian/changelog index b6e477a3c..d851f35f6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,13 @@ -ikiwiki (2.44) UNRELEASED; urgency=low +ikiwiki (2.44) unstable; urgency=medium * Bring back the svnrepo setup file option. This is needed for recentchangediff to work with svn repos. * Allow libtext-markdown-perl to satisfy dependencies, as a an alternative to the markdown package. + * Correct a bug in pagespec matching, where a empty pagespec matched all + pages. This manifested as wikis with no locked pages treating them all as + locked. The bug was introduced in version 2.41. + * Medium urgency upload due to above fix. -- Joey Hess <joeyh@debian.org> Thu, 17 Apr 2008 14:33:54 -0400 diff --git a/t/pagespec_match.t b/t/pagespec_match.t index 038472967..ee255b471 100755 --- a/t/pagespec_match.t +++ b/t/pagespec_match.t @@ -1,7 +1,7 @@ #!/usr/bin/perl use warnings; use strict; -use Test::More tests => 52; +use Test::More tests => 54; BEGIN { use_ok("IkiWiki"); } @@ -51,6 +51,8 @@ ok(pagespec_match("examples/softwaresite/bugs/fails_to_frobnicate", ok(! pagespec_match("foo", "link(./bar)", location => "foo/bar"), "link relative fail"); ok(pagespec_match("bar", "backlink(foo)"), "backlink"); ok(! pagespec_match("quux", "backlink(foo)"), "failed backlink"); +ok(! pagespec_match("bar", ""), "empty pagespec should match nothing"); +ok(! pagespec_match("bar", " "), "blank pagespec should match nothing"); $IkiWiki::pagectime{foo}=1154532692; # Wed Aug 2 11:26 EDT 2006 $IkiWiki::pagectime{bar}=1154532695; # after |