diff options
author | jpierre%netscape.com <devnull@localhost> | 2002-02-05 22:20:43 +0000 |
---|---|---|
committer | jpierre%netscape.com <devnull@localhost> | 2002-02-05 22:20:43 +0000 |
commit | 059644736a6e395ea637c12f959945cc53548ade (patch) | |
tree | d1b4724494dd96bcd3f7fa79a2f830e70b0ddea5 | |
parent | 6907e5fcec0ba2043195f17ff0cf4455b914e22d (diff) | |
download | nss-hg-059644736a6e395ea637c12f959945cc53548ade.tar.gz |
Fix for 122907 - patch to disable arena free lists with environment variable
-rw-r--r-- | security/nss/lib/util/secport.c | 6 |
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) { |