diff --git a/mm/mempool.c b/mm/mempool.c index 2cc08de8b1db259c70ad8d3aa28d0691f7ada544..4c533bc51d733989f12c9f5e25cad713f647baea 100644 --- a/mm/mempool.c +++ b/mm/mempool.c @@ -150,6 +150,9 @@ static void *remove_element(mempool_t *pool) */ void mempool_destroy(mempool_t *pool) { + if (unlikely(!pool)) + return; + while (pool->curr_nr) { void *element = remove_element(pool); pool->free(element, pool->pool_data);