summaryrefslogtreecommitdiff
path: root/pkg/btrfs/types_btree.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/btrfs/types_btree.go')
-rw-r--r--pkg/btrfs/types_btree.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/pkg/btrfs/types_btree.go b/pkg/btrfs/types_btree.go
index 734c859..e58e33b 100644
--- a/pkg/btrfs/types_btree.go
+++ b/pkg/btrfs/types_btree.go
@@ -146,6 +146,11 @@ func (node Node) MarshalBinary() ([]byte, error) {
return nil, fmt.Errorf("btrfs.Node.MarshalBinary: .Size must be greater than %d",
binstruct.StaticSize(NodeHeader{}))
}
+ if node.Head.Level > 0 {
+ node.Head.NumItems = uint32(len(node.BodyInternal))
+ } else {
+ node.Head.NumItems = uint32(len(node.BodyLeaf))
+ }
buf := make([]byte, node.Size)