diff --git a/test/end2end_test.go b/test/end2end_test.go index 82ca4199..9dc667c0 100644 --- a/test/end2end_test.go +++ b/test/end2end_test.go @@ -62,7 +62,7 @@ var ( "key1": "value1", "key2": "value2", } - testAppUA = "myApp/1.0" + testAppUA = "myApp1/1.0 myApp2/0.9" ) type testServer struct { diff --git a/transport/http_util.go b/transport/http_util.go index 85dbcbb1..bf2732ea 100644 --- a/transport/http_util.go +++ b/transport/http_util.go @@ -164,13 +164,13 @@ func newHPACKDecoder() *hpackDecoder { default: if !isReservedHeader(f.Name) { if f.Name == "user-agent" { - str := strings.Split(f.Value, " ") - if len(str) <= 1 { + ind := strings.LastIndex(f.Value, " ") + if ind == -1 { // There is no application user agent string being set. return } // Extract the application user agent string. - f.Value = str[0] + f.Value = f.Value[:ind] } if d.state.mdata == nil { d.state.mdata = make(map[string]string)