diff options
Diffstat (limited to 'net/base/cert_database_nss.cc')
-rw-r--r-- | net/base/cert_database_nss.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/net/base/cert_database_nss.cc b/net/base/cert_database_nss.cc index 0701e6a..98930ff 100644 --- a/net/base/cert_database_nss.cc +++ b/net/base/cert_database_nss.cc @@ -70,9 +70,13 @@ int CertDatabase::AddUserCert(X509Certificate* cert_obj) { } nickname = username + "'s " + ca_name + " ID"; - slot = PK11_ImportCertForKey(cert, - const_cast<char*>(nickname.c_str()), - NULL); + { + base::AutoNSSWriteLock lock; + slot = PK11_ImportCertForKey(cert, + const_cast<char*>(nickname.c_str()), + NULL); + } + if (!slot) { LOG(ERROR) << "Couldn't import user certificate."; return ERR_ADD_USER_CERT_FAILED; |