diff options
Diffstat (limited to 'src/rt/rust_obstack.cpp')
| -rw-r--r-- | src/rt/rust_obstack.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/rt/rust_obstack.cpp b/src/rt/rust_obstack.cpp index 342310d4b5c..9300ec49073 100644 --- a/src/rt/rust_obstack.cpp +++ b/src/rt/rust_obstack.cpp @@ -58,6 +58,14 @@ rust_obstack::alloc_new(size_t len) { return chunk->alloc(len); } +rust_obstack::~rust_obstack() { + while (chunk) { + rust_obstack_chunk *prev = chunk->prev; + task->free(chunk); + chunk = prev; + } +} + void * rust_obstack::alloc(size_t len) { if (!chunk) |
