diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-03-02 12:39:26 +0100 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-03-02 12:39:26 +0100 |
commit | 305ce1c9ec746d3b8f6c9306b7014bfd621478a5 (patch) | |
tree | 6366daca42c2da9efa1c43b9233527fca3f6c73d /resources | |
parent | 3e9db2ad951dbb1000cd0f8f25e4a95445046679 (diff) |
resources: Add full filename to image when processing fails
Fixes #7000
Diffstat (limited to 'resources')
-rw-r--r-- | resources/image.go | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/resources/image.go b/resources/image.go index 076f2ae4d..d1d9f650d 100644 --- a/resources/image.go +++ b/resources/image.go @@ -36,6 +36,7 @@ import ( "github.com/gohugoio/hugo/resources/resource" + "github.com/pkg/errors" _errors "github.com/pkg/errors" "github.com/gohugoio/hugo/helpers" @@ -234,7 +235,7 @@ const imageProcWorkers = 1 var imageProcSem = make(chan bool, imageProcWorkers) func (i *imageResource) doWithImageConfig(conf images.ImageConfig, f func(src image.Image) (image.Image, error)) (resource.Image, error) { - return i.getSpec().imageCache.getOrCreate(i, conf, func() (*imageResource, image.Image, error) { + img, err := i.getSpec().imageCache.getOrCreate(i, conf, func() (*imageResource, image.Image, error) { imageProcSem <- true defer func() { <-imageProcSem @@ -291,6 +292,13 @@ func (i *imageResource) doWithImageConfig(conf images.ImageConfig, f func(src im return ci, converted, nil }) + + if err != nil { + if i.root != nil && i.root.getFileInfo() != nil { + return nil, errors.Wrapf(err, "image %q", i.root.getFileInfo().Meta().Filename()) + } + } + return img, nil } func (i *imageResource) decodeImageConfig(action, spec string) (images.ImageConfig, error) { |