From 05444cb2ccf29515e6cb8f2711c64213b7cb3325 Mon Sep 17 00:00:00 2001
From: Matej Vasek <mvasek@redhat.com>
Date: Thu, 4 Feb 2021 18:30:07 +0100
Subject: Fix per review request

Signed-off-by: Matej Vasek <mvasek@redhat.com>
---
 libpod/container_api.go | 10 ++++------
 libpod/define/errors.go |  4 ++++
 2 files changed, 8 insertions(+), 6 deletions(-)

(limited to 'libpod')

diff --git a/libpod/container_api.go b/libpod/container_api.go
index c64074d80..2473acec0 100644
--- a/libpod/container_api.go
+++ b/libpod/container_api.go
@@ -483,8 +483,6 @@ func (c *Container) Wait(ctx context.Context) (int32, error) {
 	return c.WaitWithInterval(ctx, DefaultWaitInterval)
 }
 
-var errWaitingCanceled = errors.New("waiting was canceled")
-
 // WaitWithInterval blocks until the container to exit and returns its exit
 // code. The argument is the interval at which checks the container's status.
 func (c *Container) WaitWithInterval(ctx context.Context, waitTimeout time.Duration) (int32, error) {
@@ -500,15 +498,15 @@ func (c *Container) WaitWithInterval(ctx context.Context, waitTimeout time.Durat
 
 	go func() {
 		<-ctx.Done()
-		chWait <- errWaitingCanceled
+		chWait <- define.ErrCanceled
 	}()
 
 	for {
 		// ignore errors here (with exception of cancellation), it is only used to avoid waiting
 		// too long.
 		_, e := WaitForFile(exitFile, chWait, waitTimeout)
-		if e == errWaitingCanceled {
-			return -1, errWaitingCanceled
+		if e == define.ErrCanceled {
+			return -1, define.ErrCanceled
 		}
 
 		stopped, code, err := c.isStopped()
@@ -599,7 +597,7 @@ func (c *Container) WaitForConditionWithInterval(ctx context.Context, waitTimeou
 	case result = <-resultChan:
 		cancelFn()
 	case <-ctx.Done():
-		result = waitResult{-1, errWaitingCanceled}
+		result = waitResult{-1, define.ErrCanceled}
 	}
 	wg.Wait()
 	return result.code, result.err
diff --git a/libpod/define/errors.go b/libpod/define/errors.go
index d37bc397e..2e85454b2 100644
--- a/libpod/define/errors.go
+++ b/libpod/define/errors.go
@@ -198,4 +198,8 @@ var (
 	// ErrSecurityAttribute indicates that an error processing security attributes
 	// for the container
 	ErrSecurityAttribute = fmt.Errorf("%w: unable to process security attribute", ErrOCIRuntime)
+
+	// ErrCanceled indicates that an operation has been cancelled by a user.
+	// Useful for potentially long running tasks.
+	ErrCanceled = errors.New("cancelled by user")
 )
-- 
cgit v1.2.3-54-g00ecf