Index: nss/mozilla/security/nss/lib/dev/devutil.c |
=================================================================== |
--- nss/mozilla/security/nss/lib/dev/devutil.c (revision 55475) |
+++ nss/mozilla/security/nss/lib/dev/devutil.c (working copy) |
@@ -35,7 +35,7 @@ |
* ***** END LICENSE BLOCK ***** */ |
#ifdef DEBUG |
-static const char CVS_ID[] = "@(#) $RCSfile: devutil.c,v $ $Revision: 1.33 $ $Date: 2008/11/19 20:44:35 $"; |
+static const char CVS_ID[] = "@(#) $RCSfile: devutil.c,v $ $Revision: 1.35 $ $Date: 2010/04/11 05:57:47 $"; |
#endif /* DEBUG */ |
#ifndef DEVM_H |
@@ -264,6 +264,7 @@ |
rvCache->token = token; /* cache goes away with token */ |
return rvCache; |
loser: |
+ nssTokenObjectCache_Destroy(rvCache); |
return (nssTokenObjectCache *)NULL; |
} |
@@ -309,7 +310,9 @@ |
{ |
if (cache) { |
clear_cache(cache); |
- PZ_DestroyLock(cache->lock); |
+ if (cache->lock) { |
+ PZ_DestroyLock(cache->lock); |
+ } |
nss_ZFreeIf(cache); |
} |
} |
@@ -736,11 +739,7 @@ |
nssArena_Destroy(arena); |
return objects; |
loser: |
- if (objects) { |
- for (--oi; oi>=0; --oi) { |
- nssCryptokiObject_Destroy(objects[oi]); |
- } |
- } |
+ nssCryptokiObjectArray_Destroy(objects); |
nssArena_Destroy(arena); |
return (nssCryptokiObject **)NULL; |
} |