Skip to content

Commit 2e2b459

Browse files
committed
refactor(archive): create archived file header from FileInfo
1 parent 51edc63 commit 2e2b459

File tree

2 files changed

+12
-9
lines changed

2 files changed

+12
-9
lines changed

src/serverHandler/archiveTar.go

+5-8
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,13 @@ func writeTar(tw *tar.Writer, f *os.File, fInfo os.FileInfo, archivePath string)
2222
size = fInfo.Size()
2323
}
2424

25-
header := &tar.Header{
26-
Name: archivePath,
27-
Mode: 0664,
28-
Size: size,
29-
ModTime: fInfo.ModTime(),
30-
AccessTime: fInfo.ModTime(),
31-
ChangeTime: fInfo.ModTime(),
25+
header, err := tar.FileInfoHeader(fInfo, "")
26+
if err != nil {
27+
return err
3228
}
29+
header.Name = archivePath
3330

34-
err := tw.WriteHeader(header)
31+
err = tw.WriteHeader(header)
3532
if err != nil {
3633
return err
3734
}

src/serverHandler/archiveZip.go

+7-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,13 @@ func writeZip(zw *zip.Writer, f *os.File, fInfo os.FileInfo, archivePath string)
2121
size = fInfo.Size()
2222
}
2323

24-
w, err := zw.Create(archivePath)
24+
header, err := zip.FileInfoHeader(fInfo)
25+
if err != nil {
26+
return err
27+
}
28+
header.Name = archivePath
29+
30+
w, err := zw.CreateHeader(header)
2531
if err != nil {
2632
return err
2733
}

0 commit comments

Comments
 (0)