Not sure the claimed behavior counts as a memory leak? As long as it will re-use the allocated memory the next time it needs it, it seems fine to not free up memory allocated? That's how many programs work. For example many `Vector` implementations will never shrink even if you use less memory, many apps and even allocators will store freed objects in a cache for later re-allocation, etc.