| Index: net/ssl/client_cert_store_mac.cc | 
| diff --git a/net/ssl/client_cert_store_mac.cc b/net/ssl/client_cert_store_mac.cc | 
| index 93debe9621e5a61e1764dba626341d0f95f88539..d94ab1856d04c6ee2a6a15cec9c9607642e65570 100644 | 
| --- a/net/ssl/client_cert_store_mac.cc | 
| +++ b/net/ssl/client_cert_store_mac.cc | 
| @@ -114,7 +114,7 @@ bool IsIssuedByInKeychain(const std::vector<std::string>& valid_issuers, | 
| cert_handle, intermediates)); | 
| CFRelease(cert_chain);  // Also frees |intermediates|. | 
|  | 
| -  if (!new_cert->IsIssuedByEncoded(valid_issuers)) | 
| +  if (!new_cert || !new_cert->IsIssuedByEncoded(valid_issuers)) | 
| return false; | 
|  | 
| cert->swap(new_cert); | 
| @@ -290,6 +290,8 @@ void ClientCertStoreMac::GetClientCerts(const SSLCertRequestInfo& request, | 
| scoped_refptr<X509Certificate> cert( | 
| X509Certificate::CreateFromHandle(cert_handle, | 
| X509Certificate::OSCertHandles())); | 
| +    if (!cert) | 
| +      continue; | 
|  | 
| if (preferred_identity && CFEqual(preferred_identity, identity)) { | 
| // Only one certificate should match. | 
|  |