From 3f468733cbc9fe23190e184bce3fd6a91c5cf8fc Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Thu, 7 Aug 2025 21:36:28 +0000 Subject: [PATCH] fix: valueMasker concurrent map write (#825) * valueMasker create secrets copy Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> (cherry picked from commit 7ed767c23a554eefb0a7563c674e7a406393b60f) - bug fixes - [PR](https://code.forgejo.org/forgejo/runner/pulls/825): fix: valueMasker concurrent map write Co-authored-by: ChristopherHX Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/825 Reviewed-by: Gusted Co-authored-by: Earl Warren Co-committed-by: Earl Warren --- act/runner/logger.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/act/runner/logger.go b/act/runner/logger.go index f8d4f000..fad30b86 100644 --- a/act/runner/logger.go +++ b/act/runner/logger.go @@ -5,6 +5,7 @@ import ( "context" "fmt" "io" + "maps" "os" "strings" "sync" @@ -158,6 +159,7 @@ func withStepLogger(ctx context.Context, stepNumber int, stepID, stepName, stage type entryProcessor func(entry *logrus.Entry) *logrus.Entry func valueMasker(insecureSecrets bool, secrets map[string]string) entryProcessor { + secrets = maps.Clone(secrets) return func(entry *logrus.Entry) *logrus.Entry { if insecureSecrets { return entry