summaryrefslogtreecommitdiffstats
path: root/src/JackDriver.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2020-11-27 17:57:45 +0100
committerDavid Robillard <d@drobilla.net>2020-11-27 21:42:51 +0100
commit4d18a805d49ee01901517c13720bb4a9597351f4 (patch)
tree968dd8fe10ec06ce826f625a080dd48bddf0708b /src/JackDriver.cpp
parentf80e8274555f0da157e0b8c1fcae975d66178ab7 (diff)
downloadpatchage-4d18a805d49ee01901517c13720bb4a9597351f4.tar.gz
patchage-4d18a805d49ee01901517c13720bb4a9597351f4.tar.bz2
patchage-4d18a805d49ee01901517c13720bb4a9597351f4.zip
Use std::mutex
Diffstat (limited to 'src/JackDriver.cpp')
-rw-r--r--src/JackDriver.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/JackDriver.cpp b/src/JackDriver.cpp
index e916f80..dfe2a1c 100644
--- a/src/JackDriver.cpp
+++ b/src/JackDriver.cpp
@@ -100,7 +100,8 @@ JackDriver::attach(bool launch_daemon)
void
JackDriver::detach()
{
- Glib::Mutex::Lock lock(_shutdown_mutex);
+ std::lock_guard<std::mutex> lock{_shutdown_mutex};
+
if (_client) {
jack_deactivate(_client);
jack_client_close(_client);
@@ -277,7 +278,7 @@ JackDriver::refresh()
// Jack can take _client away from us at any time throughout here :/
// Shortest locks possible is the best solution I can figure out
- Glib::Mutex::Lock lock(_shutdown_mutex);
+ std::lock_guard<std::mutex> lock{_shutdown_mutex};
if (_client == nullptr) {
shutdown();
@@ -538,7 +539,9 @@ JackDriver::jack_shutdown_cb(void* jack_driver)
assert(jack_driver);
auto* me = reinterpret_cast<JackDriver*>(jack_driver);
me->_app->info_msg("Jack: Shutdown.");
- Glib::Mutex::Lock lock(me->_shutdown_mutex);
+
+ std::lock_guard<std::mutex> lock{me->_shutdown_mutex};
+
me->_client = nullptr;
me->_is_activated = false;
me->signal_detached.emit();