diff --git a/core-writer/src/RingBuffer.cpp b/core-writer/src/RingBuffer.cpp index 3b046ba..11978b6 100644 --- a/core-writer/src/RingBuffer.cpp +++ b/core-writer/src/RingBuffer.cpp @@ -69,9 +69,14 @@ void RingBuffer::initialize(size_t slot_size) char* RingBuffer::reserve(shared_ptr frame_metadata) { - // TODO: Synchronize this as well. if (!ring_buffer_initialized_) { - initialize(frame_metadata->frame_bytes_size); + { + lock_guard lock(ringbuffer_slots_mutex_); + + if (!ring_buffer_initialized_) { + initialize(frame_metadata->frame_bytes_size); + } + } } if (frame_metadata->frame_bytes_size > slot_size_) {