mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-20 21:31:32 +02:00
Fix static file change detection on Windows.
Fixed windows uses different filepath separator. The filepath.ToSlash shouldn't be used, because it can cause errors in filepath suffix and prefix testing since "c:\a" isn't a prefix of "c:/a/b/c".
This commit is contained in:
@@ -198,16 +198,20 @@ func NewWatcher(port int) error {
|
||||
}
|
||||
|
||||
func watchChange(ev *fsnotify.FileEvent) {
|
||||
ext := filepath.Ext(ev.Name)
|
||||
// ignore temp files
|
||||
istemp := strings.HasSuffix(ext, "~") || (ext == ".swp") || (ext == ".tmp")
|
||||
if istemp {
|
||||
return
|
||||
}
|
||||
|
||||
if strings.HasPrefix(ev.Name, Config.GetAbsPath(Config.StaticDir)) {
|
||||
fmt.Println("Static file changed, syncing\n")
|
||||
utils.CheckErr(copyStatic(), fmt.Sprintf("Error copying static files to %s", Config.GetAbsPath(Config.PublishDir)))
|
||||
} else {
|
||||
if !ev.IsRename() { // Rename is always accompanied by a create or modify
|
||||
// Ignoring temp files created by editors (vim)
|
||||
if !strings.HasSuffix(ev.Name, "~") && !strings.HasSuffix(ev.Name, ".swp") {
|
||||
fmt.Println("Change detected, rebuilding site\n")
|
||||
utils.StopOnErr(buildSite(true))
|
||||
}
|
||||
fmt.Println("Change detected, rebuilding site\n")
|
||||
utils.StopOnErr(buildSite(true))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user