aboutsummaryrefslogtreecommitdiff
path: root/format/commitgraph/read/edges.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-10 13:30:48 +0800
committerGravatar Runxi Yu2026-03-10 13:30:48 +0800
commit73e602a5c2c766caba59948e91c11122653705ec (patch)
tree57951a4275dd90c2b3953e5b4bf3c9a7bd09b84a /format/commitgraph/read/edges.go
parent*: Move sideband64k and pktline to protocol/ (diff)
signatureNo signature
commitgraph: Move out of format/
Diffstat (limited to 'format/commitgraph/read/edges.go')
-rw-r--r--format/commitgraph/read/edges.go48
1 files changed, 0 insertions, 48 deletions
diff --git a/format/commitgraph/read/edges.go b/format/commitgraph/read/edges.go
deleted file mode 100644
index 96ffeb6d..00000000
--- a/format/commitgraph/read/edges.go
+++ /dev/null
@@ -1,48 +0,0 @@
-package read
-
-import (
- "encoding/binary"
-
- "codeberg.org/lindenii/furgit/format/commitgraph"
- "codeberg.org/lindenii/furgit/internal/intconv"
-)
-
-func (reader *Reader) decodeExtraEdgeList(layer *layer, edgeStart uint32) ([]Position, error) {
- if len(layer.chunkExtraEdges) == 0 {
- return nil, &MalformedError{Path: layer.path, Reason: "missing EDGE chunk"}
- }
-
- out := make([]Position, 0)
-
- cur := edgeStart
- for {
- off64 := uint64(cur) * 4
-
- off, err := intconv.Uint64ToInt(off64)
- if err != nil {
- return nil, err
- }
-
- if off+4 > len(layer.chunkExtraEdges) {
- return nil, &MalformedError{Path: layer.path, Reason: "EDGE index out of range"}
- }
-
- word := binary.BigEndian.Uint32(layer.chunkExtraEdges[off : off+4])
- parentGlobal := word & commitgraph.ParentLastMask
-
- parentPos, err := reader.globalToPosition(parentGlobal)
- if err != nil {
- return nil, err
- }
-
- out = append(out, parentPos)
-
- if word&commitgraph.ParentExtraMask != 0 {
- break
- }
-
- cur++
- }
-
- return out, nil
-}