Bug 212112: we don't need to lock td->cache->lock while calling
STAN_ForceCERTCertificateUpdate. This fixed a recursive deadlock. r=mcgreer. git-svn-id: svn://10.0.0.236/trunk@144669 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -32,7 +32,7 @@
|
||||
*/
|
||||
|
||||
#ifdef DEBUG
|
||||
static const char CVS_ID[] = "@(#) $RCSfile: tdcache.c,v $ $Revision: 1.35 $ $Date: 2003-01-08 21:48:45 $ $Name: not supported by cvs2svn $";
|
||||
static const char CVS_ID[] = "@(#) $RCSfile: tdcache.c,v $ $Revision: 1.36 $ $Date: 2003-07-10 01:24:17 $ $Name: not supported by cvs2svn $";
|
||||
#endif /* DEBUG */
|
||||
|
||||
#ifndef PKIM_H
|
||||
@@ -488,11 +488,15 @@ nssTrustDomain_RemoveTokenCertsFromCache (
|
||||
for (i=0; i<dtor.numCerts; i++) {
|
||||
if (dtor.certs[i]->object.numInstances == 0) {
|
||||
nssTrustDomain_RemoveCertFromCacheLOCKED(td, dtor.certs[i]);
|
||||
} else {
|
||||
STAN_ForceCERTCertificateUpdate(dtor.certs[i]);
|
||||
dtor.certs[i] = NULL; /* skip this cert in the second for loop */
|
||||
}
|
||||
}
|
||||
PZ_Unlock(td->cache->lock);
|
||||
for (i=0; i<dtor.numCerts; i++) {
|
||||
if (dtor.certs[i]) {
|
||||
STAN_ForceCERTCertificateUpdate(dtor.certs[i]);
|
||||
}
|
||||
}
|
||||
nss_ZFreeIf(dtor.certs);
|
||||
return PR_SUCCESS;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user