diff options
Diffstat (limited to 'plugin/auto/setup.go')
-rw-r--r-- | plugin/auto/setup.go | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/plugin/auto/setup.go b/plugin/auto/setup.go index 1162274a0..38e8d26fe 100644 --- a/plugin/auto/setup.go +++ b/plugin/auto/setup.go @@ -1,6 +1,7 @@ package auto import ( + "errors" "os" "path/filepath" "regexp" @@ -44,7 +45,9 @@ func setup(c *caddy.Controller) error { if err != nil { return err } - + if a.loader.ReloadInterval == 0 { + return nil + } go func() { ticker := time.NewTicker(a.loader.ReloadInterval) for { @@ -131,7 +134,14 @@ func autoParse(c *caddy.Controller) (Auto, error) { } case "reload": - d, err := time.ParseDuration(c.RemainingArgs()[0]) + t := c.RemainingArgs() + if len(t) < 1 { + return a, errors.New("reload duration value is expected") + } + d, err := time.ParseDuration(t[0]) + if d < 0 { + err = errors.New("invalid duration") + } if err != nil { return a, plugin.Error("file", err) } |