From d3cacff8e1d71de8bccdcc9dcd3b2850bdc04663 Mon Sep 17 00:00:00 2001 From: Lantao Liu Date: Thu, 25 Jul 2019 15:00:43 -0700 Subject: [PATCH] Move context cancel into defer. Signed-off-by: Lantao Liu --- pkg/server/container_stop.go | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkg/server/container_stop.go b/pkg/server/container_stop.go index 388ea65c7..2a9c52cdc 100644 --- a/pkg/server/container_stop.go +++ b/pkg/server/container_stop.go @@ -135,18 +135,16 @@ func (c *criService) stopContainer(ctx context.Context, container containerstore } sigTermCtx, sigTermCtxCancel := context.WithTimeout(ctx, timeout) + defer sigTermCtxCancel() err = c.waitContainerStop(sigTermCtx, container) if err == nil { // Container stopped on first signal no need for SIGKILL - sigTermCtxCancel() return nil } // If the parent context was cancelled or exceeded return immediately if ctx.Err() != nil { - sigTermCtxCancel() return ctx.Err() } - sigTermCtxCancel() // sigTermCtx was exceeded. Send SIGKILL logrus.Debugf("Stop container %q with signal %v timed out", id, sig) }