| Index: net/cert/cert_verify_proc_openssl.cc | 
| diff --git a/net/cert/cert_verify_proc_openssl.cc b/net/cert/cert_verify_proc_openssl.cc | 
| index 13a19d8e16322329c01a24395f2f30ddf7c2520f..20c0ad5b1d006387a0431280f46149eac9cef376 100644 | 
| --- a/net/cert/cert_verify_proc_openssl.cc | 
| +++ b/net/cert/cert_verify_proc_openssl.cc | 
| @@ -109,8 +109,12 @@ void GetCertChainInfo(X509_STORE_CTX* store_ctx, | 
| // Set verify_result->verified_cert and | 
| // verify_result->is_issued_by_known_root. | 
| if (verified_cert) { | 
| -    verify_result->verified_cert = | 
| +    scoped_refptr<X509Certificate> verified_cert_with_chain = | 
| X509Certificate::CreateFromHandle(verified_cert, verified_chain); | 
| +    if (verified_cert_with_chain) | 
| +      verify_result->verified_cert = std::move(verified_cert_with_chain); | 
| +    else | 
| +      verify_result->cert_status |= CERT_STATUS_INVALID; | 
|  | 
| // For OpenSSL builds, only certificates used for unit tests are treated | 
| // as not issued by known roots. The only way to determine whether a | 
|  |