mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-15 21:15:51 +02:00
Implement move semantics for shared audio buffer
This commit is contained in:
@@ -30,5 +30,14 @@ AudioShmBuffer::~AudioShmBuffer() noexcept {
|
||||
// If either side drops this object then the buffer should always be
|
||||
// removed, so we'll do it on both sides to reduce the chance that we leak
|
||||
// shared memory
|
||||
boost::interprocess::shared_memory_object::remove(config.name.c_str());
|
||||
if (!is_moved) {
|
||||
boost::interprocess::shared_memory_object::remove(config.name.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
AudioShmBuffer::AudioShmBuffer(AudioShmBuffer&& o) noexcept
|
||||
: config(std::move(o.config)),
|
||||
shm(std::move(o.shm)),
|
||||
buffer(std::move(o.buffer)) {
|
||||
o.is_moved = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user