From 2f1015482ff8532befdde2cd2271f352ed3e7fcb Mon Sep 17 00:00:00 2001 From: Albin Kerouanton Date: Tue, 1 Jul 2025 02:27:46 +0200 Subject: [PATCH] libnet/d/windows: ReleasePorts: use errors.Join Signed-off-by: Albin Kerouanton --- daemon/libnetwork/drivers/windows/port_mapping.go | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/daemon/libnetwork/drivers/windows/port_mapping.go b/daemon/libnetwork/drivers/windows/port_mapping.go index 7b5ea62f53..4849587598 100644 --- a/daemon/libnetwork/drivers/windows/port_mapping.go +++ b/daemon/libnetwork/drivers/windows/port_mapping.go @@ -3,7 +3,6 @@ package windows import ( - "bytes" "context" "errors" "fmt" @@ -72,17 +71,14 @@ func allocatePort(pa *portallocator.OSAllocator, bnd types.PortBinding) (types.P // ReleasePorts releases ports specified in bindings from the portAlloc func ReleasePorts(pa *portallocator.OSAllocator, bindings []types.PortBinding) error { - var errorBuf bytes.Buffer + var errs []error // Attempt to release all port bindings, do not stop on failure for _, m := range bindings { if err := pa.Deallocate(m.HostIP, m.Proto, int(m.HostPort)); err != nil { - errorBuf.WriteString(fmt.Sprintf("\ncould not release %v because of %v", m, err)) + errs = append(errs, fmt.Errorf("could not release %v because of %v", m, err)) } } - if errorBuf.Len() != 0 { - return errors.New(errorBuf.String()) - } - return nil + return errors.Join(errs...) }