From 1bf751ef93c3ad450ca3fc3b51d5a8cb4caed9d0 Mon Sep 17 00:00:00 2001 From: Alessandro Boch Date: Thu, 6 Aug 2015 17:04:38 -0700 Subject: [PATCH] Fix in bridge delete endpoint - In DeleteEndpoint(), veth removal is a best effort, as it could have alreayd been removed by sandbox destroy. Therefore if veth is not found, cleanup defer function should not run. Signed-off-by: Alessandro Boch --- libnetwork/drivers/bridge/bridge.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libnetwork/drivers/bridge/bridge.go b/libnetwork/drivers/bridge/bridge.go index 7e9fcfa868..a6a88b5cb8 100644 --- a/libnetwork/drivers/bridge/bridge.go +++ b/libnetwork/drivers/bridge/bridge.go @@ -1129,9 +1129,9 @@ func (d *driver) DeleteEndpoint(nid, eid types.UUID) error { } // Try removal of link. Discard error: link pair might have - // already been deleted by sandbox delete. - link, err := netlink.LinkByName(ep.srcName) - if err == nil { + // already been deleted by sandbox delete. Make sure defer + // does not see this error either. + if link, err := netlink.LinkByName(ep.srcName); err == nil { netlink.LinkDel(link) }