shithub: hugo

Download patch

ref: bef5048580b38b0c29edef4eb8c67915033120e9
parent: 49a104309d53af243b32443a59bdc2a6fc9beeef
author: Bjørn Erik Pedersen <[email protected]>
date: Wed Jun 7 18:31:57 EDT 2017

Revert "hugolib: Fix live-reload regression for add/removal of dirs"

Never mind. The "adding dir" scenario didn't work anyway, so that will need another fix.

This reverts commit 49a104309d53af243b32443a59bdc2a6fc9beeef.

Closes ##3325

--- a/hugolib/site.go
+++ b/hugolib/site.go
@@ -753,6 +753,9 @@
 		go pageConverter(pageChan, convertResults, wg2)
 	}
 
+	sp := source.NewSourceSpec(s.Cfg, s.Fs)
+	fs := sp.NewFilesystem("")
+
 	for _, ev := range sourceChanged {
 		// The incrementalReadCollator below will also make changes to the site's pages,
 		// so we do this first to prevent races.
@@ -771,6 +774,15 @@
 			if ex, err := afero.Exists(s.Fs.Source, ev.Name); !ex || err != nil {
 				path, _ := helpers.GetRelativePath(ev.Name, s.getContentDir(ev.Name))
 				s.removePageByPath(path)
+				continue
+			}
+		}
+
+		// ignore files shouldn't be proceed
+		if fi, err := s.Fs.Source.Stat(ev.Name); err != nil {
+			continue
+		} else {
+			if ok, err := fs.ShouldRead(ev.Name, fi); err != nil || !ok {
 				continue
 			}
 		}
--- a/source/filesystem.go
+++ b/source/filesystem.go
@@ -90,7 +90,7 @@
 			return nil
 		}
 
-		b, err := f.shouldRead(filePath, fi)
+		b, err := f.ShouldRead(filePath, fi)
 		if err != nil {
 			return err
 		}
@@ -118,7 +118,7 @@
 
 }
 
-func (f *Filesystem) shouldRead(filePath string, fi os.FileInfo) (bool, error) {
+func (f *Filesystem) ShouldRead(filePath string, fi os.FileInfo) (bool, error) {
 	if fi.Mode()&os.ModeSymlink == os.ModeSymlink {
 		link, err := filepath.EvalSymlinks(filePath)
 		if err != nil {