diff options
author | Simon McVittie <smcv@debian.org> | 2013-01-02 17:36:17 +0000 |
---|---|---|
committer | Simon McVittie <smcv@debian.org> | 2013-01-02 19:19:32 +0000 |
commit | 1daa68b8b7a496736cc27f80c1de2bd4d97d5225 (patch) | |
tree | 46053aa1d38874e379b30419275a14fe6fc25341 | |
parent | 48664cb9336fed62d297b84ea30806fc802aa42c (diff) | |
download | ikiwiki-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.pm | 6 |
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); } |