mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-13 22:27:13 +02:00
Change AudioRingBuffer.cpp to use std::call_once
This commit is contained in:
parent
104788de50
commit
a370d287c3
1 changed files with 7 additions and 10 deletions
|
@ -153,7 +153,7 @@ int AudioRingBufferTemplate<T>::appendData(char *data, int maxSize) {
|
|||
|
||||
namespace {
|
||||
int repeatedOverflowMessageID = 0;
|
||||
std::atomic<int> messageIDInit = 0;
|
||||
std::once_flag messageIDFlag;
|
||||
}
|
||||
|
||||
template <class T>
|
||||
|
@ -169,9 +169,8 @@ int AudioRingBufferTemplate<T>::writeData(const char* data, int maxSize) {
|
|||
_nextOutput = shiftedPositionAccomodatingWrap(_nextOutput, samplesToDelete);
|
||||
_overflowCount++;
|
||||
|
||||
if (++messageIDInit == 1) {
|
||||
repeatedOverflowMessageID = LogHandler::getInstance().newRepeatedMessageID();
|
||||
}
|
||||
std::call_once(messageIDFlag, [](int& id) { id = LogHandler::getInstance().newRepeatedMessageID(); },
|
||||
repeatedOverflowMessageID);
|
||||
HIFI_FCDEBUG_ID(audio(), repeatedOverflowMessageID, RING_BUFFER_OVERFLOW_DEBUG);
|
||||
}
|
||||
|
||||
|
@ -281,9 +280,8 @@ int AudioRingBufferTemplate<T>::writeSamples(ConstIterator source, int maxSample
|
|||
_nextOutput = shiftedPositionAccomodatingWrap(_nextOutput, samplesToDelete);
|
||||
_overflowCount++;
|
||||
|
||||
if (++messageIDInit == 1) {
|
||||
repeatedOverflowMessageID = LogHandler::getInstance().newRepeatedMessageID();
|
||||
}
|
||||
std::call_once(messageIDFlag, [](int& id) { id = LogHandler::getInstance().newRepeatedMessageID(); },
|
||||
repeatedOverflowMessageID);
|
||||
HIFI_FCDEBUG_ID(audio(), repeatedOverflowMessageID, RING_BUFFER_OVERFLOW_DEBUG);
|
||||
}
|
||||
|
||||
|
@ -307,9 +305,8 @@ int AudioRingBufferTemplate<T>::writeSamplesWithFade(ConstIterator source, int m
|
|||
_nextOutput = shiftedPositionAccomodatingWrap(_nextOutput, samplesToDelete);
|
||||
_overflowCount++;
|
||||
|
||||
if (++messageIDInit == 1) {
|
||||
repeatedOverflowMessageID = LogHandler::getInstance().newRepeatedMessageID();
|
||||
}
|
||||
std::call_once(messageIDFlag, [](int& id) { id = LogHandler::getInstance().newRepeatedMessageID(); },
|
||||
repeatedOverflowMessageID);
|
||||
HIFI_FCDEBUG_ID(audio(), repeatedOverflowMessageID, RING_BUFFER_OVERFLOW_DEBUG);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue