summaryrefslogtreecommitdiffstats
path: root/drivers/coreaudio/audio_driver_coreaudio.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-02-28 00:26:01 +0100
committerGitHub <noreply@github.com>2020-02-28 00:26:01 +0100
commitb7b39786840a41a057f531ed13b64e26366befac (patch)
treeb78a2e0bc0b3f49e82e148e8edb741930ff0ce55 /drivers/coreaudio/audio_driver_coreaudio.cpp
parente66d519286693a03bf59eaba0a5f29c1c9b15d64 (diff)
parent18fbdbb456c07a56b358bea2e392765fbcbb3283 (diff)
downloadredot-engine-b7b39786840a41a057f531ed13b64e26366befac.tar.gz
Merge pull request #36556 from RandomShaper/rework_mutex
Reimplement `Mutex` with C++'s `<mutex>` (plus more)
Diffstat (limited to 'drivers/coreaudio/audio_driver_coreaudio.cpp')
-rw-r--r--drivers/coreaudio/audio_driver_coreaudio.cpp18
1 files changed, 3 insertions, 15 deletions
diff --git a/drivers/coreaudio/audio_driver_coreaudio.cpp b/drivers/coreaudio/audio_driver_coreaudio.cpp
index d8229f7bf2..1e95bcf5d9 100644
--- a/drivers/coreaudio/audio_driver_coreaudio.cpp
+++ b/drivers/coreaudio/audio_driver_coreaudio.cpp
@@ -69,8 +69,6 @@ OSStatus AudioDriverCoreAudio::output_device_address_cb(AudioObjectID inObjectID
#endif
Error AudioDriverCoreAudio::init() {
- mutex = Mutex::create();
-
AudioComponentDescription desc;
zeromem(&desc, sizeof(desc));
desc.componentType = kAudioUnitType_Output;
@@ -280,19 +278,15 @@ AudioDriver::SpeakerMode AudioDriverCoreAudio::get_speaker_mode() const {
};
void AudioDriverCoreAudio::lock() {
- if (mutex)
- mutex->lock();
+ mutex.lock();
};
void AudioDriverCoreAudio::unlock() {
- if (mutex)
- mutex->unlock();
+ mutex.unlock();
};
bool AudioDriverCoreAudio::try_lock() {
- if (mutex)
- return mutex->try_lock() == OK;
- return true;
+ return mutex.try_lock() == OK;
}
void AudioDriverCoreAudio::finish() {
@@ -344,11 +338,6 @@ void AudioDriverCoreAudio::finish() {
audio_unit = NULL;
unlock();
}
-
- if (mutex) {
- memdelete(mutex);
- mutex = NULL;
- }
}
Error AudioDriverCoreAudio::capture_init() {
@@ -691,7 +680,6 @@ AudioDriverCoreAudio::AudioDriverCoreAudio() :
audio_unit(NULL),
input_unit(NULL),
active(false),
- mutex(NULL),
device_name("Default"),
capture_device_name("Default"),
mix_rate(0),