aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <smcv@debian.org>2013-01-02 17:36:17 +0000
committerSimon McVittie <smcv@debian.org>2013-01-02 19:19:32 +0000
commit1daa68b8b7a496736cc27f80c1de2bd4d97d5225 (patch)
tree46053aa1d38874e379b30419275a14fe6fc25341
parent48664cb9336fed62d297b84ea30806fc802aa42c (diff)
downloadikiwiki-1daa68b8b7a496736cc27f80c1de2bd4d97d5225.tar
ikiwiki-1daa68b8b7a496736cc27f80c1de2bd4d97d5225.tar.gz
trail: call prerender from build_affected
In the unlikely event that the ordered contents of a trail have changed without the TRAILS or TRAILLOOP template variables being evaluated (for instance, all trail directives are removed from a former trail that uses a custom pagetemplate that doesn't contain TRAILS), we might get here without having already called prerender.
-rw-r--r--IkiWiki/Plugin/trail.pm6
1 files changed, 6 insertions, 0 deletions
diff --git a/IkiWiki/Plugin/trail.pm b/IkiWiki/Plugin/trail.pm
index cf0f0a15e..86c94642a 100644
--- a/IkiWiki/Plugin/trail.pm
+++ b/IkiWiki/Plugin/trail.pm
@@ -359,6 +359,12 @@ sub prerender {
sub build_affected {
my %affected;
+ # In principle we might not have done this yet, although in practice
+ # at least the trail itself has probably changed, and its template
+ # almost certainly contains TRAILS or TRAILLOOP, triggering our
+ # prerender as a side-effect.
+ prerender();
+
foreach my $member (keys %rebuild_trail_members) {
$affected{$member} = sprintf(gettext("building %s, its previous or next page has changed"), $member);
}