From 9ba37f3836965e5a28df48567c0b7666d959915d Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Mon, 9 Jan 2023 15:26:07 -0700 Subject: btrfsitem: Pre-allocate the stripes when unmarshaling a chunk --- lib/btrfs/btrfsitem/item_chunk.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib/btrfs/btrfsitem/item_chunk.go') diff --git a/lib/btrfs/btrfsitem/item_chunk.go b/lib/btrfs/btrfsitem/item_chunk.go index 1f1d577..e0776ad 100644 --- a/lib/btrfs/btrfsitem/item_chunk.go +++ b/lib/btrfs/btrfsitem/item_chunk.go @@ -1,4 +1,4 @@ -// Copyright (C) 2022 Luke Shumaker +// Copyright (C) 2022-2023 Luke Shumaker // // SPDX-License-Identifier: GPL-2.0-or-later @@ -65,7 +65,7 @@ func (chunk *Chunk) UnmarshalBinary(dat []byte) (int, error) { if err != nil { return n, err } - chunk.Stripes = nil + chunk.Stripes = make([]ChunkStripe, 0, chunk.Head.NumStripes) for i := 0; i < int(chunk.Head.NumStripes); i++ { var stripe ChunkStripe _n, err := binstruct.Unmarshal(dat[n:], &stripe) -- cgit v1.2.3-2-g168b