diff --git a/src/extract.go b/src/extract.go index 227022d..75eac40 100644 --- a/src/extract.go +++ b/src/extract.go @@ -8,6 +8,7 @@ import ( "errors" "fmt" "io" + "os" "strings" "github.com/c2h5oh/datasize" @@ -144,7 +145,11 @@ func ExtractZip(reader io.Reader) (*Manifest, error) { return nil, fmt.Errorf("zip: %s: %w", file.Name, err) } - manifestEntry.Type = Type_InlineFile.Enum() + if file.Mode()&os.ModeSymlink != 0 { + manifestEntry.Type = Type_Symlink.Enum() + } else { + manifestEntry.Type = Type_InlineFile.Enum() + } manifestEntry.Size = proto.Int64(int64(file.UncompressedSize64)) manifestEntry.Data = fileData } else {