aboutsummaryrefslogtreecommitdiff
path: root/packed_write_test.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-01-29 20:42:18 +0100
committerGravatar Runxi Yu2026-01-29 20:42:18 +0100
commit45da63f4d0fd94e5a8b11fc6aa8b626338dcabf8 (patch)
tree8c82b37db034ef4f897dd30d27987d72a2c87b50 /packed_write_test.go
parentTODO: Add revamp error handling (diff)
signatureNo signature
packed: Cleanup
Diffstat (limited to 'packed_write_test.go')
-rw-r--r--packed_write_test.go34
1 files changed, 16 insertions, 18 deletions
diff --git a/packed_write_test.go b/packed_write_test.go
index 63fd9266..ccd81844 100644
--- a/packed_write_test.go
+++ b/packed_write_test.go
@@ -3,6 +3,7 @@ package furgit
import (
"bytes"
"crypto/rand"
+ "encoding/binary"
"fmt"
"os"
"os/exec"
@@ -365,7 +366,7 @@ func checkPackStream(path string, algo hashAlgorithm, objectCount int) error {
if len(data) < 12 {
return ErrInvalidObject
}
- if readBE32(data[0:4]) != packMagic || readBE32(data[4:8]) != packVersion2 {
+ if binary.BigEndian.Uint32(data[0:4]) != packMagic || binary.BigEndian.Uint32(data[4:8]) != packVersion2 {
return ErrInvalidObject
}
pos := 12
@@ -433,9 +434,14 @@ func checkPackStream(path string, algo hashAlgorithm, objectCount int) error {
if baseBody == nil {
return fmt.Errorf("obj %d missing base body", i)
}
- baseSize, resultSize, err := readDeltaSizes(payload)
+ pos := 0
+ baseSize, err := packVarintRead(payload, &pos)
if err != nil {
- return fmt.Errorf("obj %d delta sizes: %v", i, err)
+ return fmt.Errorf("obj %d delta base size: %v", i, err)
+ }
+ resultSize, err := packVarintRead(payload, &pos)
+ if err != nil {
+ return fmt.Errorf("obj %d delta result size: %v", i, err)
}
if baseSize != len(baseBody) {
return fmt.Errorf("obj %d delta base size mismatch: got %d want %d", i, baseSize, len(baseBody))
@@ -454,9 +460,14 @@ func checkPackStream(path string, algo hashAlgorithm, objectCount int) error {
if baseBody == nil {
return fmt.Errorf("obj %d missing ref base body", i)
}
- baseSize, resultSize, err := readDeltaSizes(payload)
+ pos := 0
+ baseSize, err := packVarintRead(payload, &pos)
if err != nil {
- return fmt.Errorf("obj %d ref delta sizes: %v", i, err)
+ return fmt.Errorf("obj %d ref delta base size: %v", i, err)
+ }
+ resultSize, err := packVarintRead(payload, &pos)
+ if err != nil {
+ return fmt.Errorf("obj %d ref delta result size: %v", i, err)
}
if baseSize != len(baseBody) {
return fmt.Errorf("obj %d ref delta base size mismatch: got %d want %d", i, baseSize, len(baseBody))
@@ -493,19 +504,6 @@ func checkPackStream(path string, algo hashAlgorithm, objectCount int) error {
return nil
}
-func readDeltaSizes(delta []byte) (int, int, error) {
- pos := 0
- baseSize, err := packVarintRead(delta, &pos)
- if err != nil {
- return 0, 0, err
- }
- resultSize, err := packVarintRead(delta, &pos)
- if err != nil {
- return 0, 0, err
- }
- return baseSize, resultSize, nil
-}
-
func removeLooseObject(repoPath, oid string) error {
if len(oid) < 2 {
return ErrInvalidObject