mirror of
https://github.com/golang/go
synced 2024-11-18 10:54:40 -07:00
go/build: allow ~ and ^ in #cgo directives for sr.ht import paths
Fixes #32260 Change-Id: Ib44ee33b8143d523875cf5a2bc5e36bf082801a4 Reviewed-on: https://go-review.googlesource.com/c/go/+/199918 Run-TryBot: Elias Naur <mail@eliasnaur.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Daniel Martí <mvdan@mvdan.cc> Reviewed-by: Jay Conrod <jayconrod@google.com>
This commit is contained in:
parent
a38a917aee
commit
0b204f958e
@ -1552,7 +1552,8 @@ func (ctxt *Context) makePathsAbsolute(args []string, srcDir string) {
|
||||
// The @ is for OS X. See golang.org/issue/13720.
|
||||
// The % is for Jenkins. See golang.org/issue/16959.
|
||||
// The ! is because module paths may use them. See golang.org/issue/26716.
|
||||
const safeString = "+-.,/0123456789=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz:$@%! "
|
||||
// The ~ and ^ are for sr.ht. See golang.org/issue/32260.
|
||||
const safeString = "+-.,/0123456789=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz:$@%! ~^"
|
||||
|
||||
func safeCgoName(s string) bool {
|
||||
if s == "" {
|
||||
|
@ -295,7 +295,7 @@ func TestShellSafety(t *testing.T) {
|
||||
result bool
|
||||
}{
|
||||
{"-I${SRCDIR}/../include", "/projects/src/issue 11868", "-I/projects/src/issue 11868/../include", true},
|
||||
{"-I${SRCDIR}", "wtf$@%", "-Iwtf$@%", true},
|
||||
{"-I${SRCDIR}", "~wtf$@%^", "-I~wtf$@%^", true},
|
||||
{"-X${SRCDIR}/1,${SRCDIR}/2", "/projects/src/issue 11868", "-X/projects/src/issue 11868/1,/projects/src/issue 11868/2", true},
|
||||
{"-I/tmp -I/tmp", "/tmp2", "-I/tmp -I/tmp", true},
|
||||
{"-I/tmp", "/tmp/[0]", "-I/tmp", true},
|
||||
|
Loading…
Reference in New Issue
Block a user