mpctx = isc_mem_get(mctx, sizeof(isc_mempool_t));
*mpctx = (isc_mempool_t){
- .magic = MEMPOOL_MAGIC,
- .mctx = mctx,
.size = size,
.freemax = 1,
.fillcount = 1,
}
#endif /* ISC_MEM_TRACKLINES */
+ isc_mem_attach(mctx, &mpctx->mctx);
+ mpctx->magic = MEMPOOL_MAGIC;
+
*mpctxp = (isc_mempool_t *)mpctx;
MCTXLOCK(mctx);
mpctx->magic = 0;
- isc_mem_put(mpctx->mctx, mpctx, sizeof(isc_mempool_t));
+ isc_mem_putanddetach(&mpctx->mctx, mpctx, sizeof(isc_mempool_t));
}
void *