Create a copy of the section node for RSS

So the Permalink gets correct when listing translations.

I have also checked the other relevant places to make sure we do not overwrite node values we need later.

Pointers can be tricky, but lesson learned is: A copy is cheap.

Updates #2309
This commit is contained in:
Bjørn Erik Pedersen 2016-08-11 22:57:17 +02:00
parent bbfebdea43
commit 1bce8a854b

View file

@ -1855,9 +1855,11 @@ func (s *Site) renderSectionLists(prepare bool) error {
if !viper.GetBool("DisableRSS") && section != "" {
// XML Feed
rssuri := viper.GetString("RSSUri")
s.setURLs(n, section+"/"+rssuri)
c := *n
rssNode := &c
s.setURLs(rssNode, section+"/"+rssuri)
rssLayouts := []string{"section/" + section + ".rss.xml", "_default/rss.xml", "rss.xml", "_internal/_default/rss.xml"}
if err := s.renderAndWriteXML("section "+section+" rss", n.addLangPathPrefix(section+"/"+rssuri), n, s.appendThemeTemplates(rssLayouts)...); err != nil {
if err := s.renderAndWriteXML("section "+section+" rss", rssNode.addLangPathPrefix(section+"/"+rssuri), rssNode, s.appendThemeTemplates(rssLayouts)...); err != nil {
return err
}
}