diff options
author | relyea%netscape.com <devnull@localhost> | 2002-04-16 00:24:34 +0000 |
---|---|---|
committer | relyea%netscape.com <devnull@localhost> | 2002-04-16 00:24:34 +0000 |
commit | 0f1f4b52a1cc781b7cd2b27949975a49428dc931 (patch) | |
tree | 30dcf9e05fc71d0ccb709f78b46acc0f7b30a6e8 | |
parent | e0071e37a1c0c29a5872723d72894ee1abd94746 (diff) | |
download | nss-hg-0f1f4b52a1cc781b7cd2b27949975a49428dc931.tar.gz |
Don't free the temp secmod.db name until we are through using it.
-rw-r--r-- | security/nss/lib/softoken/pk11db.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/security/nss/lib/softoken/pk11db.c b/security/nss/lib/softoken/pk11db.c index fdb8a18a4..7c44a7805 100644 --- a/security/nss/lib/softoken/pk11db.c +++ b/security/nss/lib/softoken/pk11db.c @@ -651,12 +651,12 @@ secmod_OpenDB(const char *appName, const char *filename, const char *dbName, secname[len-3] = 0; } pkcs11db=rdbopen(appName, "", secname, readOnly ? NO_RDONLY:NO_CREATE); - PORT_Free(secname); if (update && !pkcs11db) { DB *updatedb; pkcs11db = rdbopen(appName, "", secname, NO_CREATE); if (!pkcs11db) { + PORT_Free(secname); return NULL; } updatedb = dbopen(dbName, NO_RDONLY, 0600, DB_HASH, 0); @@ -665,9 +665,11 @@ secmod_OpenDB(const char *appName, const char *filename, const char *dbName, (*updatedb->close)(updatedb); } else { (*pkcs11db->close)(pkcs11db); + PORT_Free(secname); return NULL; } } + PORT_Free(secname); return pkcs11db; } |