From 5626918663de1d3f606850e25a5b39f940ceb7a2 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sun, 5 Jun 2022 22:12:51 -0600 Subject: better error handling --- cmd/btrfs-fsck/main.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'cmd/btrfs-fsck') diff --git a/cmd/btrfs-fsck/main.go b/cmd/btrfs-fsck/main.go index e1a37ab..7823c8d 100644 --- a/cmd/btrfs-fsck/main.go +++ b/cmd/btrfs-fsck/main.go @@ -57,9 +57,14 @@ func Main(imgfilename string) (err error) { fmt.Printf("Pass 1: ... walking chunk tree\n") visitedChunkNodes := make(map[btrfs.LogicalAddr]struct{}) if err := fs.WalkTree(superblock.Data.ChunkTree, btrfs.WalkTreeHandler{ - MidNode: func(node *util.Ref[btrfs.LogicalAddr, btrfs.Node]) error { - visitedChunkNodes[node.Addr] = struct{}{} - return nil + Node: func(node *util.Ref[btrfs.LogicalAddr, btrfs.Node], err error) error { + if err != nil { + fmt.Printf("Pass 1: ... walk chunk tree: error: %v\n", err) + } + if node != nil { + visitedChunkNodes[node.Addr] = struct{}{} + } + return err }, }); err != nil { fmt.Printf("Pass 1: ... walk chunk tree: error: %v\n", err) -- cgit v1.2.3-2-g168b