From 26ae77e8f63111bba3dd4e92ffcaccaa76570927 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Thu, 29 Jan 2026 17:43:02 +0100 Subject: packed: Use random delta seed --- packed_write_pack.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'packed_write_pack.go') diff --git a/packed_write_pack.go b/packed_write_pack.go index 0bcaf9ca..42c8793d 100644 --- a/packed_write_pack.go +++ b/packed_write_pack.go @@ -1,6 +1,7 @@ package furgit import ( + "crypto/rand" "crypto/sha1" "crypto/sha256" "encoding/binary" @@ -318,10 +319,15 @@ func (repo *Repository) packWrite(w io.Writer, objects []Hash, opts packWriteOpt } var dctx deltaContext + var deltaSeed uint32 if opts.EnableDeltas { dctx.window = defaultDeltaWindow + var seedBytes [4]byte + if _, err := rand.Read(seedBytes[:]); err != nil { + return Hash{}, err + } + deltaSeed = binary.LittleEndian.Uint32(seedBytes[:]) } - deltaSeed := uint32(0) for _, id := range objects { ty, body, err := repo.ReadObjectTypeRaw(id) -- cgit v1.3.1-10-gc9f91