resource: Improve error processing error message
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Tue, 13 Feb 2018 08:14:44 +0000 (09:14 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Tue, 13 Feb 2018 08:14:44 +0000 (09:14 +0100)
resource/image.go

index c9ee90bf117ed93bbe6d270fbd9aff14c719895c..1914b3c044e0498e478622f94787ec4443c4661a 100644 (file)
@@ -223,11 +223,14 @@ func (i *Image) doWithImageConfig(action, spec string, f func(src image.Image, c
        return i.spec.imageCache.getOrCreate(i, key, func(resourceCacheFilename string) (*Image, error) {
                ci := i.clone()
 
+               errOp := action
+               errPath := i.AbsSourceFilename()
+
                ci.setBasePath(conf)
 
                src, err := i.decodeSource()
                if err != nil {
-                       return nil, err
+                       return nil, &os.PathError{Op: errOp, Path: errPath, Err: err}
                }
 
                if conf.Rotate != 0 {
@@ -237,7 +240,7 @@ func (i *Image) doWithImageConfig(action, spec string, f func(src image.Image, c
 
                converted, err := f(src, conf)
                if err != nil {
-                       return ci, err
+                       return ci, &os.PathError{Op: errOp, Path: errPath, Err: err}
                }
 
                b := converted.Bounds()