author | Brad Fitzpatrick
<bradfitz@golang.org> 2016-09-12 01:05:40 UTC |
committer | Brad Fitzpatrick
<bradfitz@golang.org> 2016-09-12 18:27:42 UTC |
parent | cfe3c2a7525b50c3d707256e371c90938cfef98a |
http2/http2.go | +6 | -3 |
diff --git a/http2/http2.go b/http2/http2.go index 401923b..ab43a09 100644 --- a/http2/http2.go +++ b/http2/http2.go @@ -352,11 +352,14 @@ func (s *sorter) SortStrings(ss []string) { } // validPseudoPath reports whether v is a valid :path pseudo-header -// value. It must be a non-empty string starting with '/', and not -// start with two slashes. +// value. It must be either: +// +// *) a non-empty string starting with '/', but not with with "//", +// *) the string '*', for OPTIONS requests. +// // For now this is only used a quick check for deciding when to clean // up Opaque URLs before sending requests from the Transport. // See golang.org/issue/16847 func validPseudoPath(v string) bool { - return len(v) > 0 && v[0] == '/' && (len(v) == 1 || v[1] != '/') + return (len(v) > 0 && v[0] == '/' && (len(v) == 1 || v[1] != '/')) || v == "*" }