From: Mark Andrews Date: Wed, 12 May 2010 00:46:55 +0000 (+0000) Subject: 2882. [bug] Remove memory context from list of active contexts X-Git-Tag: v9.4-ESV-R3~51^2~96 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=2fca4a3321c0137a0bcaa4692564b249ae26322e;p=thirdparty%2Fbind9.git 2882. [bug] Remove memory context from list of active contexts before clearing 'magic'. [RT #21274] --- diff --git a/CHANGES b/CHANGES index d70340ce78a..e019a06643a 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2882. [bug] Remove memory context from list of active contexts + before clearing 'magic'. [RT #21274] + 2881. [bug] Reduce the amount of time the rbtdb write lock is held when closing a version. [RT #21198] diff --git a/lib/isc/mem.c b/lib/isc/mem.c index 5b11d08dcfb..cefb3aeefb6 100644 --- a/lib/isc/mem.c +++ b/lib/isc/mem.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: mem.c,v 1.155 2010/03/04 23:50:34 tbox Exp $ */ +/* $Id: mem.c,v 1.156 2010/05/12 00:46:55 marka Exp $ */ /*! \file */ @@ -1050,14 +1050,14 @@ destroy(isc__mem_t *ctx) { unsigned int i; isc_ondestroy_t ondest; - ctx->common.impmagic = 0; - ctx->common.magic = 0; - LOCK(&lock); ISC_LIST_UNLINK(contexts, ctx, link); totallost += ctx->inuse; UNLOCK(&lock); + ctx->common.impmagic = 0; + ctx->common.magic = 0; + INSIST(ISC_LIST_EMPTY(ctx->pools)); #if ISC_MEM_TRACKLINES