From 529051d35af506cbe24dbc27325fac7789cb80a9 Mon Sep 17 00:00:00 2001 From: Jan Dubois Date: Sun, 30 Sep 2018 00:09:36 -0700 Subject: [PATCH] Fix link target name for symbolic links in tar archive --- vendor/github.com/mholt/archiver/tar.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/vendor/github.com/mholt/archiver/tar.go b/vendor/github.com/mholt/archiver/tar.go index ee0c4436..0cd0fb77 100644 --- a/vendor/github.com/mholt/archiver/tar.go +++ b/vendor/github.com/mholt/archiver/tar.go @@ -140,7 +140,14 @@ func tarFile(tarWriter *tar.Writer, source, dest string) error { return fmt.Errorf("error walking to %s: %v", path, err) } - header, err := tar.FileInfoHeader(info, path) + link := path + if (info.Mode() & os.ModeSymlink) != 0 { + link, err = os.Readlink(path) + if err != nil { + return fmt.Errorf("%s: readlink: %v", path, err) + } + } + header, err := tar.FileInfoHeader(info, link) if err != nil { return fmt.Errorf("%s: making header: %v", path, err) }