This commit is contained in:
yincong 2025-01-22 10:14:06 +08:00
parent 0ebc591e8e
commit 6e0fba07dd
No known key found for this signature in database
GPG Key ID: D37F4B83EDFE5B0F
3 changed files with 8 additions and 6 deletions

View File

@ -423,7 +423,10 @@ func (tw *Writer) AddFS(fsys fs.FS) error {
if err != nil {
return err
}
h.Name = strings.TrimSuffix(name, info.Name()) + h.Name
h.Name = name
if d.IsDir() {
h.Name += "/"
}
if err := tw.WriteHeader(h); err != nil {
return err
}

View File

@ -201,7 +201,6 @@ func (fi headerFileInfo) String() string {
// of the returned header to provide the full path name of the file.
// If compression is desired, callers should set the FileHeader.Method
// field; it is unset by default.
// If fi describes a directory, a slash is appended to the name.
func FileInfoHeader(fi fs.FileInfo) (*FileHeader, error) {
size := fi.Size()
fh := &FileHeader{
@ -215,9 +214,6 @@ func FileInfoHeader(fi fs.FileInfo) (*FileHeader, error) {
} else {
fh.UncompressedSize = uint32(fh.UncompressedSize64)
}
if fi.IsDir() {
fh.Name = fh.Name + "/"
}
return fh, nil
}

View File

@ -519,7 +519,10 @@ func (w *Writer) AddFS(fsys fs.FS) error {
if err != nil {
return err
}
h.Name = strings.TrimSuffix(name, info.Name()) + h.Name
h.Name = name
if d.IsDir() {
h.Name += "/"
}
h.Method = Deflate
fw, err := w.CreateHeader(h)
if err != nil {