diff options
author | Joey Hess <joey@kitenet.net> | 2010-04-20 17:42:36 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2010-04-20 17:42:36 -0400 |
commit | bfca8345ea7d49df6a4f6521f1db416d28671f35 (patch) | |
tree | 0ee44dc208c5da563e41f2b9beb163776034d6ae /IkiWiki | |
parent | 808a4249fc7f20fe66dd01cd0586919879075d32 (diff) | |
download | ikiwiki-bfca8345ea7d49df6a4f6521f1db416d28671f35.tar ikiwiki-bfca8345ea7d49df6a4f6521f1db416d28671f35.tar.gz |
bugfix
Avoid file_pruned triggering on absolute paths causing the whole
comments_pending directory being pruned.
Simplify code.
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/comments.pm | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/IkiWiki/Plugin/comments.pm b/IkiWiki/Plugin/comments.pm index ccc9e1068..58bd4b851 100644 --- a/IkiWiki/Plugin/comments.pm +++ b/IkiWiki/Plugin/comments.pm @@ -646,16 +646,12 @@ sub comments_pending () { wanted => sub { my $file=decode_utf8($_); $file=~s/^\Q$dir\E\/?//; - return unless length $file; - if (IkiWiki::file_pruned($_)) { - $File::Find::prune=1; - } - elsif (! -l $_ && ! -d _) { - my ($f) = $file =~ /$config{wiki_file_regexp}/; # untaint - if (defined $f && $f =~ /\Q._comment\E$/) { - my $ctime=(stat($_))[10]; - push @ret, [$f, $ctime]; - } + return if ! length $file || IkiWiki::file_pruned($file) + || -l $_ || -d _ || $file !~ /\Q._comment\E$/; + my ($f) = $file =~ /$config{wiki_file_regexp}/; # untaint + if (defined $f) { + my $ctime=(stat($_))[10]; + push @ret, [$f, $ctime]; } } }, $dir); |