hugo

Unnamed repository; edit this file 'description' to name the repository.

git clone git://git.shimmy1996.com/hugo.git
commit 1bce8a854bc157e20c156c57b85bbab999e2c539
parent bbfebdea433f7b08dbd9d49c2df863c7a24b9665
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date:   Thu, 11 Aug 2016 22:57:17 +0200

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

Diffstat:
Mhugolib/site.go | 6++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/hugolib/site.go b/hugolib/site.go
@@ -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
 			}
 		}