| Index: net/socket/ssl_client_socket_openssl.cc
|
| diff --git a/net/socket/ssl_client_socket_openssl.cc b/net/socket/ssl_client_socket_openssl.cc
|
| index 9d7289a04ff8650466e1248d5ccc19be5c73db42..743b37834e9228f27d4e00512ecf2ef6db75e98d 100644
|
| --- a/net/socket/ssl_client_socket_openssl.cc
|
| +++ b/net/socket/ssl_client_socket_openssl.cc
|
| @@ -945,10 +945,12 @@ int SSLClientSocketOpenSSL::Init() {
|
| enabled_ciphers_vector.push_back(id);
|
| }
|
|
|
| - std::vector<uint8_t> wire_protos =
|
| - SerializeNextProtos(ssl_config_.next_protos,
|
| - HasCipherAdequateForHTTP2(enabled_ciphers_vector) &&
|
| - IsTLSVersionAdequateForHTTP2(ssl_config_));
|
| + NextProtoVector next_protos = ssl_config_.next_protos;
|
| + if (!HasCipherAdequateForHTTP2(enabled_ciphers_vector) ||
|
| + !IsTLSVersionAdequateForHTTP2(ssl_config_)) {
|
| + DisableHTTP2(&next_protos);
|
| + }
|
| + std::vector<uint8_t> wire_protos = SerializeNextProtos(next_protos);
|
| SSL_set_alpn_protos(ssl_, wire_protos.empty() ? NULL : &wire_protos[0],
|
| wire_protos.size());
|
| }
|
|
|