Fix bug in Site.assembleSections method - hugo - [fork] hugo port for 9front
HTML git clone git@git.drkhsh.at/hugo.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit 00868081f624928d773a7b698654766f8cd70069
DIR parent e9750d831f749afa928d8a099af5889d18cb2484
HTML Author: Vas Sudanagunta <vas@commonkarma.org>
Date: Sun, 25 Feb 2018 01:15:03 -0500
Fix bug in Site.assembleSections method
Site.assembleSections logic assumes that the the home page would always be the first in the Site's list of pages. This is not in fact guaranteed to be true. When it is not, the method can fail to set the parent for some or all root-level pages.
Fixes #4447
Diffstat:
M hugolib/site_sections.go | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
---
DIR diff --git a/hugolib/site_sections.go b/hugolib/site_sections.go
@@ -167,11 +167,15 @@ func (s *Site) assembleSections() Pages {
undecided Pages
)
+ homes := s.findPagesByKind(KindHome)
+ if len(homes) == 1 {
+ home = homes[0]
+ } else if len(homes) > 1 {
+ panic("Too many homes")
+ }
+
for i, p := range s.Pages {
if p.Kind != KindPage {
- if p.Kind == KindHome {
- home = p
- }
continue
}