]> Cypherpunks repositories - gostls13.git/commitdiff
[release-branch.go1.11] cmd/go: don't let script grep commands match $WORK
authorIan Lance Taylor <iant@golang.org>
Sat, 25 Aug 2018 17:11:19 +0000 (10:11 -0700)
committerIan Lance Taylor <iant@golang.org>
Sun, 26 Aug 2018 05:27:46 +0000 (05:27 +0000)
If $WORK happens to contain the string that a stdout/stderr/grep
command is searching for, a negative grep command will fail incorrectly.

Fixes #27170
Fixes #27221

Change-Id: I84454d3c42360fe3295c7235d388381525eb85b4
Reviewed-on: https://go-review.googlesource.com/131398
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
(cherry picked from commit e3106b455b74c91db94e8e1abf2342b5b5aec7b1)
Reviewed-on: https://go-review.googlesource.com/131399
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/cmd/go/script_test.go

index 389485bc6582e7328cdea96250c13bd820aa3d9c..7c083a87b932f392d45da66dd999cbaead537f27 100644 (file)
@@ -629,6 +629,9 @@ func scriptMatch(ts *testScript, neg bool, args []string, text, name string) {
                text = string(data)
        }
 
+       // Matching against workdir would be misleading.
+       text = strings.Replace(text, ts.workdir, "$WORK", -1)
+
        if neg {
                if re.MatchString(text) {
                        if isGrep {