From 807e60ded2f069b2b136d30e4d23ea09e1d359a1 Mon Sep 17 00:00:00 2001 From: Povilas Kanapickas Date: Sat, 24 May 2025 21:33:42 -0400 Subject: [PATCH] chore: use std::unique_prt for EventQueue's Buffer port input-leap/9dbfd551cda4367bdc8067b5c3ca9c4027494503 ported-by sithlord48 --- src/lib/base/EventQueue.cpp | 11 +++++------ src/lib/base/EventQueue.h | 3 ++- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/lib/base/EventQueue.cpp b/src/lib/base/EventQueue.cpp index e1e4cab7e..d992e08fc 100644 --- a/src/lib/base/EventQueue.cpp +++ b/src/lib/base/EventQueue.cpp @@ -32,12 +32,11 @@ EventQueue::EventQueue() : m_readyMutex(new Mutex), m_readyCondVar(new CondVarnewMutex(); ARCH->setSignalHandler(Arch::kINTERRUPT, &interrupt, this); ARCH->setSignalHandler(Arch::kTERMINATE, &interrupt, this); - m_buffer = new SimpleEventQueueBuffer; + m_buffer = std::make_unique(); } EventQueue::~EventQueue() { - delete m_buffer; delete m_readyCondVar; delete m_readyMutex; @@ -84,7 +83,7 @@ void EventQueue::adoptBuffer(IEventQueueBuffer *buffer) } // discard old buffer and old events - delete m_buffer; + m_buffer.reset(); for (auto i = m_events.begin(); i != m_events.end(); ++i) { Event::deleteData(i->second); } @@ -92,9 +91,9 @@ void EventQueue::adoptBuffer(IEventQueueBuffer *buffer) m_oldEventIDs.clear(); // use new buffer - m_buffer = buffer; - if (m_buffer == nullptr) { - m_buffer = new SimpleEventQueueBuffer; + m_buffer.reset(buffer); + if (buffer == nullptr) { + m_buffer = std::make_unique(); } } diff --git a/src/lib/base/EventQueue.h b/src/lib/base/EventQueue.h index cd5abe249..d2015d61a 100644 --- a/src/lib/base/EventQueue.h +++ b/src/lib/base/EventQueue.h @@ -14,6 +14,7 @@ #include "mt/CondVar.h" #include +#include #include #include @@ -106,7 +107,7 @@ private: ArchMutex m_mutex; // buffer of events - IEventQueueBuffer *m_buffer = nullptr; + std::unique_ptr m_buffer; // saved events EventTable m_events;