X-Git-Url: https://scripts.mit.edu/gitweb/www/ikiwiki.git/blobdiff_plain/5ce4c89dee82119a2f1147094eda82a735ea8098..09ff797682fd89380a4a71564ec02649af99851e:/IkiWiki.pm diff --git a/IkiWiki.pm b/IkiWiki.pm index 1730e476a..0791e1e75 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -355,7 +355,7 @@ sub getsetup () { }, wiki_file_prune_regexps => { type => "internal", - default => [qr/(^|\/)\.\.(\/|$)/, qr/^\./, qr/\/\./, + default => [qr/(^|\/)\.\.(\/|$)/, qr/^\//, qr/^\./, qr/\/\./, qr/\.x?html?$/, qr/\.ikiwiki-new$/, qr/(^|\/).svn\//, qr/.arch-ids\//, qr/{arch}\//, qr/(^|\/)_MTN\//, qr/(^|\/)_darcs\//, @@ -440,10 +440,9 @@ sub getsetup () { safe => 0, rebuild => 0, }, - getctime => { + gettime => { type => "internal", - default => 0, - description => "running in getctime mode", + description => "running in gettime mode", safe => 0, rebuild => 0, }, @@ -1087,14 +1086,16 @@ sub htmllink ($$$;@) { $bestlink=htmlpage($bestlink); if (! $destsources{$bestlink}) { - return $linktext unless length $config{cgiurl}; - return " "create", - page => lc($link), - from => $lpage - ). - "\" rel=\"nofollow\">?$linktext" + my $cgilink = ""; + if (length $config{cgiurl}) { + $cgilink = " "create", + page => lc($link), + from => $lpage + )."\" rel=\"nofollow\">?"; + } + return "$cgilink$linktext" } } @@ -1512,6 +1513,7 @@ sub loadindex () { open ($in, "<", "$config{wikistatedir}/indexdb") || return; } else { + $config{gettime}=1; # first build return; } } @@ -1790,6 +1792,10 @@ sub rcs_getctime ($) { $hooks{rcs}{rcs_getctime}{call}->(@_); } +sub rcs_getmtime ($) { + $hooks{rcs}{rcs_getmtime}{call}->(@_); +} + sub rcs_receive () { $hooks{rcs}{rcs_receive}{call}->(); } @@ -1839,15 +1845,8 @@ sub deptype (@) { } my $file_prune_regexp; -sub file_pruned ($;$) { +sub file_pruned ($) { my $file=shift; - if (@_) { - require File::Spec; - $file=File::Spec->canonpath($file); - my $base=File::Spec->canonpath(shift); - return if $file eq $base; - $file =~ s#^\Q$base\E/+##; - } if (defined $config{include} && length $config{include}) { return 0 if $file =~ m/$config{include}/; @@ -2222,7 +2221,7 @@ sub merge_influences { my $anded=shift; if (! $anded || (($this || %{$this->[1]}) && - ($other || %{$other->[1]}))) { + ($other || %{$other->[1]}))) { foreach my $influence (keys %{$other->[1]}) { $this->[1]{$influence} |= $other->[1]{$influence}; } @@ -2246,7 +2245,7 @@ sub derel ($$) { if ($path =~ m!^\./!) { $from=~s#/?[^/]+$## if defined $from; $path=~s#^\./##; - $path="$from/$path" if length $from; + $path="$from/$path" if defined $from && length $from; } return $path;