diff options
author | David Robillard <d@drobilla.net> | 2020-11-27 17:57:45 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2020-11-27 21:42:51 +0100 |
commit | 4d18a805d49ee01901517c13720bb4a9597351f4 (patch) | |
tree | 968dd8fe10ec06ce826f625a080dd48bddf0708b /src/JackDriver.cpp | |
parent | f80e8274555f0da157e0b8c1fcae975d66178ab7 (diff) | |
download | patchage-4d18a805d49ee01901517c13720bb4a9597351f4.tar.gz patchage-4d18a805d49ee01901517c13720bb4a9597351f4.tar.bz2 patchage-4d18a805d49ee01901517c13720bb4a9597351f4.zip |
Use std::mutex
Diffstat (limited to 'src/JackDriver.cpp')
-rw-r--r-- | src/JackDriver.cpp | 9 |
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(); |