X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/66b46576ec097b9f10b45d4b1de18bb214cd5bd5..208c7b7ca243717ace469abc234a22c53dbba9be:/IkiWiki/Render.pm diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm index ab3a71671..c82d8a35a 100644 --- a/IkiWiki/Render.pm +++ b/IkiWiki/Render.pm @@ -92,7 +92,7 @@ sub genpage ($$) { $actions++; } if ($config{discussion}) { - if ($page !~ /.*\/\Q$config{discussionpage}\E$/ && + if ($page !~ /.*\/\Q$config{discussionpage}\E$/i && (length $config{cgiurl} || exists $links{$page."/".$config{discussionpage}})) { $template->param(discussionlink => htmllink($page, $page, $config{discussionpage}, noimageinline => 1, forcesubpage => 1)); @@ -392,27 +392,39 @@ sub find_del_files ($) { push @internal_del, $pagesources{$page}; } else { - debug(sprintf(gettext("removing old page %s"), $page)); push @del, $pagesources{$page}; } $links{$page}=[]; $renderedfiles{$page}=[]; $pagemtime{$page}=0; - foreach my $old (@{$oldrenderedfiles{$page}}) { - prune($config{destdir}."/".$old); - } - delete $pagesources{$page}; - foreach my $source (keys %destsources) { - if ($destsources{$source} eq $page) { - delete $destsources{$source}; - } - } } } return \@del, \@internal_del; } +sub remove_del (@) { + foreach my $file (@_) { + my $page=pagename($file); + if (! isinternal($page)) { + debug(sprintf(gettext("removing old page %s"), $page)); + } + + foreach my $old (@{$oldrenderedfiles{$page}}) { + prune($config{destdir}."/".$old); + } + + foreach my $source (keys %destsources) { + if ($destsources{$source} eq $page) { + delete $destsources{$source}; + } + } + + delete $pagecase{lc $page}; + delete $pagesources{$page}; + } +} + sub find_changed ($) { my $files=shift; my @changed; @@ -633,6 +645,8 @@ sub refresh () { } calculate_links(); + + remove_del(@$del, @$internal_del); foreach my $file (@$changed) { render($file, sprintf(gettext("building %s"), $file));