diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2019-11-25 12:49:04 +0100 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2019-11-25 18:59:06 +0100 |
commit | d6f7a9e28dfd5abff08b6aaf6fb3493c46bd1e39 (patch) | |
tree | f5715b86cff28eb5c7ab7320c30a492806441cae /hugolib/site.go | |
parent | 031f948f87ac97ca49d0a487a392a8a0c6afb699 (diff) |
resources/images: Make the image cache more robust
Also allow timeout to be set as a duration string, e.g. `30s`.
Fixes #6501
Diffstat (limited to 'hugolib/site.go')
-rw-r--r-- | hugolib/site.go | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/hugolib/site.go b/hugolib/site.go index 0b45c4803..4b4df6451 100644 --- a/hugolib/site.go +++ b/hugolib/site.go @@ -181,11 +181,12 @@ func (init *siteInit) Reset() { init.menus.Reset() } -func (s *Site) initInit(init *lazy.Init, pctx pageContext) { +func (s *Site) initInit(init *lazy.Init, pctx pageContext) bool { _, err := init.Do() if err != nil { s.h.FatalError(pctx.wrapError(err)) } + return err == nil } func (s *Site) prepareInits() { @@ -410,10 +411,23 @@ func newSite(cfg deps.DepsCfg) (*Site, error) { return nil, err } + timeout := 30 * time.Second + if cfg.Language.IsSet("timeout") { + switch v := cfg.Language.Get("timeout").(type) { + case int: + timeout = time.Duration(v) * time.Millisecond + case string: + d, err := time.ParseDuration(v) + if err == nil { + timeout = d + } + } + } + siteConfig := siteConfigHolder{ sitemap: config.DecodeSitemap(config.Sitemap{Priority: -1, Filename: "sitemap.xml"}, cfg.Language.GetStringMap("sitemap")), taxonomiesConfig: taxonomies, - timeout: time.Duration(cfg.Language.GetInt("timeout")) * time.Millisecond, + timeout: timeout, hasCJKLanguage: cfg.Language.GetBool("hasCJKLanguage"), enableEmoji: cfg.Language.Cfg.GetBool("enableEmoji"), } |