summaryrefslogtreecommitdiff
path: root/archive/archive.go
diff options
context:
space:
mode:
Diffstat (limited to 'archive/archive.go')
-rw-r--r--archive/archive.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/archive/archive.go b/archive/archive.go
index 5d6c020438..2fac18e99f 100644
--- a/archive/archive.go
+++ b/archive/archive.go
@@ -404,7 +404,7 @@ func Untar(archive io.Reader, dest string, options *TarOptions) error {
parent := filepath.Dir(hdr.Name)
parentPath := filepath.Join(dest, parent)
if _, err := os.Lstat(parentPath); err != nil && os.IsNotExist(err) {
- err = os.MkdirAll(parentPath, 600)
+ err = os.MkdirAll(parentPath, 0777)
if err != nil {
return err
}
@@ -617,6 +617,9 @@ func NewTempArchive(src Archive, dir string) (*TempArchive, error) {
if _, err := io.Copy(f, src); err != nil {
return nil, err
}
+ if err = f.Sync(); err != nil {
+ return nil, err
+ }
if _, err := f.Seek(0, 0); err != nil {
return nil, err
}