diff --git a/commands/commandeer.go b/commands/commandeer.go index 7706360abb0..304ef7a7c64 100644 --- a/commands/commandeer.go +++ b/commands/commandeer.go @@ -61,6 +61,8 @@ type commandeer struct { logger loggers.Logger serverConfig *config.Server + buildLock func() (unlock func(), err error) + // Loading state mustHaveConfigFile bool failOnInitErr bool @@ -419,6 +421,10 @@ func (c *commandeer) loadConfig() error { err = createErr } c.hugoSites = h + // TODO(bep) improve. + if c.buildLock == nil { + c.buildLock = h.LockBuild + } close(c.created) }) diff --git a/commands/hugo.go b/commands/hugo.go index b954bf13cbf..7bfd1443aa8 100644 --- a/commands/hugo.go +++ b/commands/hugo.go @@ -869,7 +869,7 @@ func (c *commandeer) newWatcher(pollIntervalStr string, dirList ...string) (*wat for { select { case evs := <-watcher.Events: - unlock, err := c.hugo().BaseFs.LockBuild() + unlock, err := c.buildLock() if err != nil { c.logger.Errorln("Failed to acquire a build lock: %s", err) return