mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-17 21:01:26 +02:00
resources/images: Make the image cache more robust
Also allow timeout to be set as a duration string, e.g. `30s`. Fixes #6501
This commit is contained in:
@@ -123,6 +123,15 @@ func (i Image) WithSpec(s Spec) *Image {
|
||||
return &i
|
||||
}
|
||||
|
||||
// InitConfig reads the image config from the given reader.
|
||||
func (i *Image) InitConfig(r io.Reader) error {
|
||||
var err error
|
||||
i.configInit.Do(func() {
|
||||
i.config, _, err = image.DecodeConfig(r)
|
||||
})
|
||||
return err
|
||||
}
|
||||
|
||||
func (i *Image) initConfig() error {
|
||||
var err error
|
||||
i.configInit.Do(func() {
|
||||
@@ -130,10 +139,7 @@ func (i *Image) initConfig() error {
|
||||
return
|
||||
}
|
||||
|
||||
var (
|
||||
f hugio.ReadSeekCloser
|
||||
config image.Config
|
||||
)
|
||||
var f hugio.ReadSeekCloser
|
||||
|
||||
f, err = i.Spec.ReadSeekCloser()
|
||||
if err != nil {
|
||||
@@ -141,11 +147,7 @@ func (i *Image) initConfig() error {
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
config, _, err = image.DecodeConfig(f)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
i.config = config
|
||||
i.config, _, err = image.DecodeConfig(f)
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
|
Reference in New Issue
Block a user