@@ -15,8 +15,8 @@ import (
1515 "github.com/gobuffalo/packd"
1616 "github.com/gobuffalo/packr/v2/file"
1717 "github.com/gobuffalo/packr/v2/file/resolver"
18- "github.com/gobuffalo/packr/v2/plog"
1918 "github.com/gobuffalo/packr/v2/internal/takeon/github.com/markbates/oncer"
19+ "github.com/gobuffalo/packr/v2/plog"
2020)
2121
2222var _ packd.Box = & Box {}
@@ -28,12 +28,12 @@ var _ packd.Finder = &Box{}
2828// Box represent a folder on a disk you want to
2929// have access to in the built Go binary.
3030type Box struct {
31- Path string `json:"path"`
32- Name string `json:"name"`
33- ResolutionDir string `json:"resolution_dir"`
34- DefaultResolver resolver.Resolver `json:"default_resolver"`
35- resolvers resolversMap
36- dirs dirsMap
31+ Path string `json:"path"`
32+ Name string `json:"name"`
33+ ResolutionDir string `json:"resolution_dir"`
34+ DefaultResolver resolver.Resolver `json:"default_resolver"`
35+ resolvers resolversMap
36+ dirs dirsMap
3737}
3838
3939// NewBox returns a Box that can be used to
@@ -215,7 +215,12 @@ func (b *Box) Resolve(key string) (file.File, error) {
215215
216216 f , err := r .Resolve (b .Name , key )
217217 if err != nil {
218- z := filepath .Join (resolver .OsPath (b .ResolutionDir ), filepath .FromSlash (path .Clean ("/" + resolver .OsPath (key ))))
218+ z , err := resolver .ResolvePathInBase (resolver .OsPath (b .ResolutionDir ), filepath .FromSlash (path .Clean ("/" + resolver .OsPath (key ))))
219+ if err != nil {
220+ plog .Debug (r , "Resolve" , "box" , b .Name , "key" , key , "err" , err )
221+ return f , err
222+ }
223+
219224 f , err = r .Resolve (b .Name , z )
220225 if err != nil {
221226 plog .Debug (r , "Resolve" , "box" , b .Name , "key" , z , "err" , err )
0 commit comments