X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/17be286cc347bd6e48b174482ed10f3f46639961..86a43aefb4f4c79a2044caf847622d0a00cd5356:/IkiWiki/Plugin/autoindex.pm diff --git a/IkiWiki/Plugin/autoindex.pm b/IkiWiki/Plugin/autoindex.pm index 0dd76259e..5e8a9e0a3 100644 --- a/IkiWiki/Plugin/autoindex.pm +++ b/IkiWiki/Plugin/autoindex.pm @@ -33,18 +33,19 @@ sub genindex ($) { sub refresh () { eval q{use File::Find}; error($@) if $@; + eval q{use Cwd}; + error($@) if $@; + my $origdir=getcwd(); my (%pages, %dirs); foreach my $dir ($config{srcdir}, @{$config{underlaydirs}}, $config{underlaydir}) { - require File::Spec; - $dir=File::Spec->canonpath($dir); + chdir($dir) || die "chdir: $!"; find({ no_chdir => 1, wanted => sub { - my $file=File::Spec->canonpath(decode_utf8($_)); - return if $file eq $dir; - $file=~s/^\Q$dir\E\/?//; + my $file=decode_utf8($_); + $file=~s/^\.\/?//; return unless length $file; if (IkiWiki::file_pruned($file)) { $File::Find::prune=1; @@ -61,7 +62,9 @@ sub refresh () { } } } - }, $dir); + }, '.'); + + chdir($origdir) || die "chdir: $!"; } my %deleted;