func processZipTimestampField(data []byte, file *zip.FileHeader) error { if !file.Mode().IsDir() && !file.Mode().IsRegular() { return nil } var tsField ZipTimestampField err := binary.Read(bytes.NewReader(data), binary.LittleEndian, &tsField) if err != nil { return err } if (tsField.Flags & 1) == 1 { modTime := time.Unix(int64(tsField.ModTime), 0) acTime := time.Now() return os.Chtimes(file.Name, acTime, modTime) } return nil }