diff options
Diffstat (limited to 'src/rt/circular_buffer.cpp')
| -rw-r--r-- | src/rt/circular_buffer.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/rt/circular_buffer.cpp b/src/rt/circular_buffer.cpp index 191ec7c5756..98746d62f15 100644 --- a/src/rt/circular_buffer.cpp +++ b/src/rt/circular_buffer.cpp @@ -20,6 +20,7 @@ circular_buffer::circular_buffer(rust_task *task, size_t unit_sz) : _buffer_sz, _unread, this); A(sched, _buffer, "Failed to allocate buffer."); + task->ref(); } circular_buffer::~circular_buffer() { @@ -28,6 +29,7 @@ circular_buffer::~circular_buffer() { W(sched, _unread == 0, "freeing circular_buffer with %d unread bytes", _unread); task->free(_buffer); + --task->ref_count; } size_t |
