| Index: net/cert/nss_cert_database.cc
|
| diff --git a/net/cert/nss_cert_database.cc b/net/cert/nss_cert_database.cc
|
| index 4490daf5b53b58fbfc32909a5fe6b7b030bcd2cb..2b90e008f29df86f8ee2a46d08e6fb6f57c9ca39 100644
|
| --- a/net/cert/nss_cert_database.cc
|
| +++ b/net/cert/nss_cert_database.cc
|
| @@ -420,8 +420,13 @@ void NSSCertDatabase::ListCertsImpl(crypto::ScopedPK11Slot slot,
|
| CERTCertListNode* node;
|
| for (node = CERT_LIST_HEAD(cert_list); !CERT_LIST_END(node, cert_list);
|
| node = CERT_LIST_NEXT(node)) {
|
| - certs->push_back(X509Certificate::CreateFromHandle(
|
| - node->cert, X509Certificate::OSCertHandles()));
|
| + scoped_refptr<X509Certificate> cert = X509Certificate::CreateFromHandle(
|
| + node->cert, X509Certificate::OSCertHandles());
|
| + if (!cert) {
|
| + LOG(ERROR) << "X509Certificate::CreateFromHandle failed";
|
| + continue;
|
| + }
|
| + certs->push_back(cert);
|
| }
|
| CERT_DestroyCertList(cert_list);
|
| }
|
|
|