summaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
author LaMont Jones <lamontjones@google.com> 2025-03-18 10:57:12 -0700
committer LaMont Jones <lamontjones@google.com> 2025-03-18 11:01:38 -0700
commitf342e96e6d906051c09b6044ce984f3ba42acec9 (patch)
tree53a68aeed7e661d04735a91ac43fab99e8b68a9d /cmd
parentbe6f81d61e25753eeecdb65bdf7dd2bb6d4c1a5c (diff)
find_input_delta: do not use time when we have CRC
CRC is a better indicator of change, especially since zipSync changes mtime. Bug: 403555251 Test: manual Change-Id: I55ebd904d55cdf9ef3c5dc07a1dd959a282a395f
Diffstat (limited to 'cmd')
-rw-r--r--cmd/find_input_delta/find_input_delta_lib/internal_state.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/cmd/find_input_delta/find_input_delta_lib/internal_state.go b/cmd/find_input_delta/find_input_delta_lib/internal_state.go
index bf4f86686..0f88159be 100644
--- a/cmd/find_input_delta/find_input_delta_lib/internal_state.go
+++ b/cmd/find_input_delta/find_input_delta_lib/internal_state.go
@@ -95,9 +95,14 @@ func inspectZipFileContents(name string) ([]*fid_proto.PartialCompileInput, erro
}
ret := []*fid_proto.PartialCompileInput{}
for _, v := range rc.File {
+ // Only include timestamp when there is no CRC.
+ timeNsec := proto.Int64(v.ModTime().UnixNano())
+ if v.CRC32 != 0 {
+ timeNsec = nil
+ }
pci := &fid_proto.PartialCompileInput{
Name: proto.String(v.Name),
- MtimeNsec: proto.Int64(v.ModTime().UnixNano()),
+ MtimeNsec: timeNsec,
Hash: proto.String(fmt.Sprintf("%08x", v.CRC32)),
}
ret = append(ret, pci)