- # Work around very innefficient behavior in File::Spec if abs2rel
- # is passed two relative paths. It's much faster if paths are
- diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm
- index f550b67..5d1991d 100644
- --- a/IkiWiki/CGI.pm
- +++ b/IkiWiki/CGI.pm
- @@ -386,7 +386,7 @@ sub cgi_editpage ($$) { #{{{
- my ($page)=$form->field('page');
- $page=titlepage(possibly_foolish_untaint($page));
- if (! defined $page || ! length $page ||
- - $page=~/$config{wiki_file_prune_regexp}/ || $page=~/^\//) {
- + is_prune($page) || $page=~/^\//) {
- error("bad page name");
- }
-
- @@ -476,8 +476,7 @@ sub cgi_editpage ($$) { #{{{
- my $best_loc;
- if (! defined $from || ! length $from ||
- $from ne $form->field('from') ||
- - $from=~/$config{wiki_file_prune_regexp}/ ||
- - $from=~/^\// ||
- + is_prune($from) || $from=~/^\// ||
- $form->submitted eq "Preview") {
- @page_locs=$best_loc=$page;
- }
- diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm
- index 48a25be..a083d3f 100644
- --- a/IkiWiki/Render.pm
- +++ b/IkiWiki/Render.pm
- @@ -202,7 +202,7 @@ sub refresh () { #{{{
- no_chdir => 1,
- wanted => sub {
- $_=decode_utf8($_);
- - if (/$config{wiki_file_prune_regexp}/) {
- + if (is_prune($_)) {
- $File::Find::prune=1;
- }
- elsif (! -d $_ && ! -l $_) {
- @@ -222,7 +222,7 @@ sub refresh () { #{{{
- no_chdir => 1,
- wanted => sub {
- $_=decode_utf8($_);
- - if (/$config{wiki_file_prune_regexp}/) {
- + if (is_prune($_, $config{underlaydir})) {
- $File::Find::prune=1;
- }
- elsif (! -d $_ && ! -l $_) {
\ No newline at end of file