]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki.pm
web commit by EthanGlasserCamp: do I have to maintain this?
[ikiwiki.git] / IkiWiki.pm
index a39e317f574304fbbde0d49aaec9ac2c5c1612a1..80208ef2b51878bb20e9321b36a9094c8ee8b17d 100644 (file)
@@ -264,6 +264,7 @@ sub writefile ($$$;$) { #{{{
        close OUT;
 } #}}}
 
+my %cleared;
 sub will_render ($$;$) { #{{{
        my $page=shift;
        my $dest=shift;
@@ -275,11 +276,12 @@ sub will_render ($$;$) { #{{{
                error("$config{destdir}/$dest independently created, not overwriting with version from $page");
        }
 
-       if (! $clear) {
+       if (! $clear || $cleared{$page}) {
                $renderedfiles{$page}=[$dest, grep { $_ ne $dest } @{$renderedfiles{$page}}];
        }
        else {
                $renderedfiles{$page}=[$dest];
+               $cleared{$page}=1;
        }
 } #}}}
 
@@ -641,6 +643,8 @@ sub hook (@) { # {{{
        if (! exists $param{type} || ! ref $param{call} || ! exists $param{id}) {
                error "hook requires type, call, and id parameters";
        }
+
+       return if $param{no_override} && exists $hooks{$param{type}}{$param{id}};
        
        $hooks{$param{type}}{$param{id}}=\%param;
 } # }}}