aboutsummaryrefslogtreecommitdiff
path: root/format
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-05 21:25:39 +0800
committerGravatar Runxi Yu2026-03-05 21:25:39 +0800
commit9ba4a988bcc7879b62e0c0fff910113df481c599 (patch)
tree0b5d4318af242b96102a857a8593e59b1b9f2c3a /format
parent*: Fix wsl_v5 again (diff)
signatureNo signature
*: Fix various lints
Diffstat (limited to 'format')
-rw-r--r--format/pack/ingest/stream.go112
-rw-r--r--format/pack/ingest/thin_fix.go2
2 files changed, 57 insertions, 57 deletions
diff --git a/format/pack/ingest/stream.go b/format/pack/ingest/stream.go
index 4c6b59ab..0a496167 100644
--- a/format/pack/ingest/stream.go
+++ b/format/pack/ingest/stream.go
@@ -50,6 +50,62 @@ func newStreamScanner(src io.Reader, dstFile *os.File, hash hash.Hash, hashSize
}
}
+// Read implements io.Reader.
+func (scanner *streamScanner) Read(dst []byte) (int, error) {
+ if len(dst) == 0 {
+ return 0, nil
+ }
+
+ if scanner.n-scanner.off == 0 {
+ err := scanner.fill(1)
+ if err != nil {
+ if errors.Is(err, io.EOF) {
+ return 0, io.EOF
+ }
+
+ return 0, err
+ }
+ }
+
+ unread := scanner.n - scanner.off
+ if unread == 0 {
+ return 0, io.EOF
+ }
+
+ n := len(dst)
+ if n > unread {
+ n = unread
+ }
+
+ copy(dst, scanner.buf[scanner.off:scanner.off+n])
+
+ err := scanner.use(n)
+ if err != nil {
+ return 0, err
+ }
+
+ return n, nil
+}
+
+// ReadByte implements io.ByteReader without allocation.
+func (scanner *streamScanner) ReadByte() (byte, error) {
+ if scanner.n-scanner.off == 0 {
+ err := scanner.fill(1)
+ if err != nil {
+ return 0, err
+ }
+ }
+
+ b := scanner.buf[scanner.off]
+
+ err := scanner.use(1)
+ if err != nil {
+ return 0, err
+ }
+
+ return b, nil
+}
+
// fill ensures at least min unread bytes are available in receiver's buffer.
func (scanner *streamScanner) fill(min int) error {
if min <= 0 {
@@ -115,62 +171,6 @@ func (scanner *streamScanner) use(n int) error {
return nil
}
-// Read implements io.Reader.
-func (scanner *streamScanner) Read(dst []byte) (int, error) {
- if len(dst) == 0 {
- return 0, nil
- }
-
- if scanner.n-scanner.off == 0 {
- err := scanner.fill(1)
- if err != nil {
- if errors.Is(err, io.EOF) {
- return 0, io.EOF
- }
-
- return 0, err
- }
- }
-
- unread := scanner.n - scanner.off
- if unread == 0 {
- return 0, io.EOF
- }
-
- n := len(dst)
- if n > unread {
- n = unread
- }
-
- copy(dst, scanner.buf[scanner.off:scanner.off+n])
-
- err := scanner.use(n)
- if err != nil {
- return 0, err
- }
-
- return n, nil
-}
-
-// ReadByte implements io.ByteReader without allocation.
-func (scanner *streamScanner) ReadByte() (byte, error) {
- if scanner.n-scanner.off == 0 {
- err := scanner.fill(1)
- if err != nil {
- return 0, err
- }
- }
-
- b := scanner.buf[scanner.off]
-
- err := scanner.use(1)
- if err != nil {
- return 0, err
- }
-
- return b, nil
-}
-
// readFull reads exactly len(dst) bytes through receiver.
func (scanner *streamScanner) readFull(dst []byte) error {
_, err := io.ReadFull(scanner, dst)
diff --git a/format/pack/ingest/thin_fix.go b/format/pack/ingest/thin_fix.go
index 5883ac23..767816ed 100644
--- a/format/pack/ingest/thin_fix.go
+++ b/format/pack/ingest/thin_fix.go
@@ -275,7 +275,7 @@ func encodePackEntryHeader(ty objecttype.Type, size int64) []byte {
panic(err)
}
- c := byte((uint8(ty) << 4) | byte(s&0x0f))
+ c := (uint8(ty) << 4) | byte(s&0x0f)
s >>= 4
for s != 0 {