Merge pull request #3143 from rn/symlink-fix

cmd/pkg: Fix symlink handling in pkg build context
This commit is contained in:
Rolf Neugebauer 2018-07-27 20:23:52 +01:00 committed by GitHub
commit deb627e56b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -222,7 +222,16 @@ func (c *buildCtx) Copy(w io.WriteCloser) error {
return fmt.Errorf("ctx: Walk error on %s: %v", p, err)
}
h, err := tar.FileInfoHeader(i, "")
var link string
if i.Mode()&os.ModeSymlink != 0 {
var err error
link, err = os.Readlink(p)
if err != nil {
return fmt.Errorf("ctx: Failed to read symlink %s: %v", p, err)
}
}
h, err := tar.FileInfoHeader(i, link)
if err != nil {
return fmt.Errorf("ctx: Converting FileInfo for %s: %v", p, err)
}