aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@kitenet.net>2010-04-20 18:16:40 -0400
committerJoey Hess <joey@kitenet.net>2010-04-20 18:16:40 -0400
commit511f7f9cb94ebdd8ea33973a0ca74d2f8249aa3f (patch)
tree6423e40e1bad2aaaccdb37a2cd6579fe7a0d7315
parentbfca8345ea7d49df6a4f6521f1db416d28671f35 (diff)
downloadikiwiki-511f7f9cb94ebdd8ea33973a0ca74d2f8249aa3f.tar
ikiwiki-511f7f9cb94ebdd8ea33973a0ca74d2f8249aa3f.tar.gz
bugfix
So this is the one place that does need to canonpath and compare, as two argument file_pruned used to.
-rw-r--r--IkiWiki/Plugin/autoindex.pm8
1 files changed, 6 insertions, 2 deletions
diff --git a/IkiWiki/Plugin/autoindex.pm b/IkiWiki/Plugin/autoindex.pm
index 23a17d4e9..0dd76259e 100644
--- a/IkiWiki/Plugin/autoindex.pm
+++ b/IkiWiki/Plugin/autoindex.pm
@@ -36,13 +36,17 @@ sub refresh () {
my (%pages, %dirs);
foreach my $dir ($config{srcdir}, @{$config{underlaydirs}}, $config{underlaydir}) {
+ require File::Spec;
+ $dir=File::Spec->canonpath($dir);
+
find({
no_chdir => 1,
wanted => sub {
- my $file=decode_utf8($_);
+ my $file=File::Spec->canonpath(decode_utf8($_));
+ return if $file eq $dir;
$file=~s/^\Q$dir\E\/?//;
return unless length $file;
- if (IkiWiki::file_pruned($_)) {
+ if (IkiWiki::file_pruned($file)) {
$File::Find::prune=1;
}
elsif (! -l $_) {