From 8ddb5490e8a36393916846ede746dce49f4fade6 Mon Sep 17 00:00:00 2001 From: zeripath Date: Tue, 8 Mar 2022 08:30:14 +0000 Subject: [PATCH] Don't show context cancelled errors in attribute reader (#19006) Fix #18997 Signed-off-by: Andrew Thornton Co-authored-by: wxiaoguang --- modules/git/repo_attribute.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/git/repo_attribute.go b/modules/git/repo_attribute.go index 772ee6ad1..ce24b0a7a 100644 --- a/modules/git/repo_attribute.go +++ b/modules/git/repo_attribute.go @@ -205,7 +205,9 @@ func (c *CheckAttributeReader) Run() error { return nil }, }) - if err != nil && c.ctx.Err() != nil && err.Error() != "signal: killed" { + if err != nil && // If there is an error we need to return but: + c.ctx.Err() != err && // 1. Ignore the context error if the context is cancelled or exceeds the deadline (RunWithContext could return c.ctx.Err() which is Canceled or DeadlineExceeded) + err.Error() != "signal: killed" { // 2. We should not pass up errors due to the program being killed return fmt.Errorf("failed to run attr-check. Error: %w\nStderr: %s", err, stdErr.String()) } return nil