diff --git a/src/libpmemobj/heap.c b/src/libpmemobj/heap.c index b6e3e01f5f731b78ec96772980fa632c4c8ef5fc..33c6d2048fbdf1e9183676910d312babe29cc2bc 100644 --- a/src/libpmemobj/heap.c +++ b/src/libpmemobj/heap.c @@ -1258,6 +1258,7 @@ heap_cleanup(struct palloc_heap *heap) alloc_class_collection_delete(rt->alloc_classes); + os_tls_key_delete(rt->thread_arena); bucket_delete(rt->default_bucket); for (unsigned i = 0; i < rt->narenas; ++i) @@ -1268,7 +1269,6 @@ heap_cleanup(struct palloc_heap *heap) util_mutex_destroy(&rt->arenas_lock); - os_tls_key_delete(rt->thread_arena); Free(rt->arenas);