From 249500e0b88aea7ce77fa0720a207f303e6ceabf Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sat, 2 Jul 2022 13:00:59 -0600 Subject: multi error --- pkg/btrfs/io2_fs.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'pkg/btrfs/io2_fs.go') diff --git a/pkg/btrfs/io2_fs.go b/pkg/btrfs/io2_fs.go index 33bfcbf..5129329 100644 --- a/pkg/btrfs/io2_fs.go +++ b/pkg/btrfs/io2_fs.go @@ -4,6 +4,8 @@ import ( "fmt" "io" + "github.com/datawire/dlib/derror" + "lukeshu.com/btrfs-tools/pkg/btrfs/btrfsitem" "lukeshu.com/btrfs-tools/pkg/btrfs/btrfsvol" "lukeshu.com/btrfs-tools/pkg/util" @@ -169,13 +171,16 @@ func (fs *FS) initDev(sb *util.Ref[PhysicalAddr, Superblock]) error { } func (fs *FS) Close() error { - var err error + var errs derror.MultiError for _, dev := range fs.LV.PhysicalVolumes() { - if _err := dev.Close(); _err != nil && err == nil { - err = _err + if err := dev.Close(); err != nil && err == nil { + errs = append(errs, err) } } - return err + if errs != nil { + return errs + } + return nil } var _ io.Closer = (*FS)(nil) -- cgit v1.2.3-2-g168b