summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjpierre%netscape.com <devnull@localhost>2002-02-05 22:20:43 +0000
committerjpierre%netscape.com <devnull@localhost>2002-02-05 22:20:43 +0000
commit059644736a6e395ea637c12f959945cc53548ade (patch)
treed1b4724494dd96bcd3f7fa79a2f830e70b0ddea5
parent6907e5fcec0ba2043195f17ff0cf4455b914e22d (diff)
downloadnss-hg-059644736a6e395ea637c12f959945cc53548ade.tar.gz
Fix for 122907 - patch to disable arena free lists with environment variable
-rw-r--r--security/nss/lib/util/secport.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/security/nss/lib/util/secport.c b/security/nss/lib/util/secport.c
index 94c0937c9..f512e38e3 100644
--- a/security/nss/lib/util/secport.c
+++ b/security/nss/lib/util/secport.c
@@ -50,6 +50,7 @@
#include "nsslocks.h"
#include "secport.h"
#include "prvrsion.h"
+#include "prenv.h"
#ifdef DEBUG
#define THREADMARK
@@ -265,7 +266,7 @@ PORT_FreeArena(PLArenaPool *arena, PRBool zero)
size_t len = sizeof *arena;
extern const PRVersionDescription * libVersionPoint(void);
static const PRVersionDescription * pvd;
- static PRBool doFreeArenaPool;
+ static PRBool doFreeArenaPool = PR_FALSE;
if (ARENAPOOL_MAGIC == pool->magic ) {
len = sizeof *pool;
@@ -278,7 +279,8 @@ PORT_FreeArena(PLArenaPool *arena, PRBool zero)
if ((pvd->vMajor > 4) ||
(pvd->vMajor == 4 && pvd->vMinor > 1) ||
(pvd->vMajor == 4 && pvd->vMinor == 1 && pvd->vPatch >= 1)) {
- doFreeArenaPool = PR_TRUE;
+ const char *ev = PR_GetEnv("NSS_DISABLE_ARENA_FREE_LIST");
+ if (!ev) doFreeArenaPool = PR_TRUE;
}
}
if (doFreeArenaPool) {