]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki.pm
web commit by http://ptecza.myopenid.com/: * Where is ikiwiki 2.14?
[ikiwiki.git] / IkiWiki.pm
index eb003a1fb9992e940dec64d2a315cca4260307c2..d64f4e688a9a9638be8cb67e490b26dc3d60eb33 100644 (file)
@@ -141,6 +141,10 @@ sub checkconfig () { #{{{
                require IkiWiki::Rcs::Stub;
        }
 
+       if (exists $config{umask}) {
+               umask(possibly_foolish_untaint($config{umask}));
+       }
+
        run_hooks(checkconfig => sub { shift->() });
 
        return 1;
@@ -407,6 +411,7 @@ sub bestlink ($$) { #{{{
                # absolute links
                $cwd="";
        }
+       $link=~s/\/$//;
 
        do {
                my $l=$cwd;
@@ -513,7 +518,9 @@ sub displaytime ($;$) { #{{{
 sub beautify_url ($) { #{{{
        my $url=shift;
 
-       $url =~ s!/index.$config{htmlext}$!/!;
+       if ($config{usedirs}) {
+               $url =~ s!/index.$config{htmlext}$!/!;
+       }
        $url =~ s!^$!./!; # Browsers don't like empty links...
 
        return $url;
@@ -541,6 +548,7 @@ sub htmllink ($$$;@) { #{{{
        my $page=shift; # the page that will contain the link (different for inline)
        my $link=shift;
        my %opts=@_;
+
        $link=~s/\/$//;
 
        my $bestlink;
@@ -560,7 +568,8 @@ sub htmllink ($$$;@) { #{{{
        }
        
        return "<span class=\"selflink\">$linktext</span>"
-               if length $bestlink && $page eq $bestlink;
+               if length $bestlink && $page eq $bestlink &&
+                  ! defined $opts{anchor};
        
        if (! $destsources{$bestlink}) {
                $bestlink=htmlpage($bestlink);