diff options
Diffstat (limited to 'commitgraph/read/edges.go')
| -rw-r--r-- | commitgraph/read/edges.go | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/commitgraph/read/edges.go b/commitgraph/read/edges.go deleted file mode 100644 index 33a6c9fc..00000000 --- a/commitgraph/read/edges.go +++ /dev/null @@ -1,48 +0,0 @@ -package read - -import ( - "encoding/binary" - - "codeberg.org/lindenii/furgit/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 -} |
