| Index: net/socket_stream/socket_stream.cc
|
| diff --git a/net/socket_stream/socket_stream.cc b/net/socket_stream/socket_stream.cc
|
| index d89c074a061fe00a0db631fdbeab487b541c93f6..b201b35848efcf9616ec8c43957b7f1d69da41ac 100644
|
| --- a/net/socket_stream/socket_stream.cc
|
| +++ b/net/socket_stream/socket_stream.cc
|
| @@ -887,7 +887,10 @@ int SocketStream::DoSSLConnectComplete(int result) {
|
| // Add the bad certificate to the set of allowed certificates in the
|
| // SSL config object.
|
| SSLConfig::CertAndStatus bad_cert;
|
| - bad_cert.cert = ssl_info.cert;
|
| + if (!ssl_info.cert->GetDEREncoded(&bad_cert.cert_der)) {
|
| + next_state_ = STATE_CLOSE;
|
| + return result;
|
| + }
|
| bad_cert.cert_status = ssl_info.cert_status;
|
| ssl_config_.allowed_bad_certs.push_back(bad_cert);
|
| // Restart connection ignoring the bad certificate.
|
|
|