From 2825cb3f8dd84777428597fa466e2ecef434f676 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Fri, 29 Sep 2017 13:57:10 -0700 Subject: Correctly set date and mode fields for MANIFEST.MF The file header returned by jar.ManifestFileContents had unset date and mode fields. The unset date field resulted in the "Last Mod Time" field in the zip file being set to 0, which OpenJDK 9's jar implementation treats as an error: java.time.DateTimeException: Invalid value for MonthOfYear (valid values 1 - 12): 0 Bug: 67095392 Test: zipdetails out/host/linux-x86/framework/tradefed.jar Change-Id: I0a818d57420f5e5de57e8ff57791951c1b538443 --- jar/jar.go | 2 ++ 1 file changed, 2 insertions(+) (limited to 'jar') diff --git a/jar/jar.go b/jar/jar.go index f17bc98d..08fa1abd 100644 --- a/jar/jar.go +++ b/jar/jar.go @@ -94,6 +94,8 @@ func ManifestFileContents(src string) (*zip.FileHeader, []byte, error) { Method: zip.Store, UncompressedSize64: uint64(len(b)), } + fh.SetMode(0700) + fh.SetModTime(DefaultTime) return fh, b, nil } -- cgit v1.2.3