| Index: crypto/scoped_test_nss_db.cc
|
| diff --git a/crypto/scoped_test_nss_db.cc b/crypto/scoped_test_nss_db.cc
|
| index a3ff68b8b16dd2506f75f2f379c3a431b5e92575..452c26d73e50500dd820b58f3821387404414448 100644
|
| --- a/crypto/scoped_test_nss_db.cc
|
| +++ b/crypto/scoped_test_nss_db.cc
|
| @@ -29,17 +29,22 @@ ScopedTestNSSDB::~ScopedTestNSSDB() {
|
| // Don't close when NSS is < 3.15.1, because it would require an additional
|
| // sleep for 1 second after closing the database, due to
|
| // http://bugzil.la/875601.
|
| - if (!NSS_VersionCheck("3.15.1") || !slot_)
|
| + if (!NSS_VersionCheck("3.15.1")) {
|
| + LOG(ERROR) << "NSS version is < 3.15.1, test DB will not be closed.";
|
| + temp_dir_.Take();
|
| return;
|
| + }
|
|
|
| // NSS is allowed to do IO on the current thread since dispatching
|
| // to a dedicated thread would still have the affect of blocking
|
| // the current thread, due to NSS's internal locking requirements
|
| base::ThreadRestrictions::ScopedAllowIO allow_io;
|
|
|
| - SECStatus status = SECMOD_CloseUserDB(slot_.get());
|
| - if (status != SECSuccess)
|
| - PLOG(ERROR) << "SECMOD_CloseUserDB failed: " << PORT_GetError();
|
| + if (slot_) {
|
| + SECStatus status = SECMOD_CloseUserDB(slot_.get());
|
| + if (status != SECSuccess)
|
| + PLOG(ERROR) << "SECMOD_CloseUserDB failed: " << PORT_GetError();
|
| + }
|
|
|
| if (!temp_dir_.Delete())
|
| LOG(ERROR) << "Could not delete temporary directory.";
|
|
|