hugo

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

git clone git://git.shimmy1996.com/hugo.git
commit 68e2e63d92d238ad9b8a714acd2467bb43122ada
parent ec02b9908cef4f4e022d9bd207c64a3ca086b57a
Author: Tatsushi Demachi <tdemachi@gmail.com>
Date:   Mon,  1 Feb 2016 00:21:12 +0900

Fix Hugo hang up with empty content directory

Site.ReadPagesFromSource returns nil chan error value when a site
content directory is empty but its receiver expects to be passed
something error values via the channel.

This fixes it by returning a channel which will be immediately closed.

Fix #1797

Diffstat:
Mhugolib/site.go | 7++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/hugolib/site.go b/hugolib/site.go
@@ -876,8 +876,11 @@ func (s *Site) ReadPagesFromSource() chan error {
 		panic(fmt.Sprintf("s.Source not set %s", s.absContentDir()))
 	}
 
+	errs := make(chan error)
+
 	if len(s.Source.Files()) < 1 {
-		return nil
+		close(errs)
+		return errs
 	}
 
 	files := s.Source.Files()
@@ -891,8 +894,6 @@ func (s *Site) ReadPagesFromSource() chan error {
 		go sourceReader(s, filechan, results, wg)
 	}
 
-	errs := make(chan error)
-
 	// we can only have exactly one result collator, since it makes changes that
 	// must be synchronized.
 	go readCollator(s, results, errs)