ref: 6205a16b6e4e0e7924aed291c1adab1d775c1cfe
parent: 85c04ca2f3bf1aac9941953918ab1f1b69f1a29f
author: spf13 <[email protected]>
date: Thu Mar 13 16:34:47 EDT 2014
Fixes #227 by properly scoping the variables within the go routine.
--- a/hugolib/site.go
+++ b/hugolib/site.go
@@ -411,15 +411,14 @@
func (s *Site) RenderIndexes() (err error) {
var wg sync.WaitGroup
- for singular, plural := range s.Config.Indexes {
- for key, oo := range s.Indexes[plural] {
+ for sing, pl := range s.Config.Indexes {
+ for key, oo := range s.Indexes[pl] {
wg.Add(1)
-
- go func(k string, o WeightedPages) (err error) {
+ go func(k string, o WeightedPages, singular string, plural string) (err error) {
defer wg.Done()
+ base := plural + "/" + k
n := s.NewNode()
n.Title = strings.Title(k)
- base := plural + "/" + k
s.setUrls(n, base)
n.Date = o[0].Page.Date
n.Data[singular] = o
@@ -439,7 +438,7 @@
}
}
return
- }(key, oo)
+ }(key, oo, sing, pl)
}
}
wg.Wait()