diff options
author | Paul Adenot <[email protected]> | 2023-08-02 17:50:16 +0200 |
---|---|---|
committer | Paul Adenot <[email protected]> | 2023-08-03 14:13:06 +0200 |
commit | ac8474a5929e9de3bce84f16f8c589240eb9f7c4 (patch) | |
tree | 4fe6542716149ca66b88f4940bfb8b760e760ff8 | |
parent | b9af56cee792f17a466db7b3ac3382262782c6f1 (diff) | |
download | cubeb-ac8474a5929e9de3bce84f16f8c589240eb9f7c4.tar.gz cubeb-ac8474a5929e9de3bce84f16f8c589240eb9f7c4.zip |
AAudio: Don't unlock a mutex owned by a lock_guard
-rw-r--r-- | src/cubeb_aaudio.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/cubeb_aaudio.cpp b/src/cubeb_aaudio.cpp index 4b7774e..d0a31b2 100644 --- a/src/cubeb_aaudio.cpp +++ b/src/cubeb_aaudio.cpp @@ -1259,14 +1259,14 @@ aaudio_stream_init(cubeb * ctx, cubeb_stream ** stream, // This is ok: the thread is marked as being in use lock.unlock(); - lock_guard guard(stm->mutex); + int err; + + { + lock_guard guard(stm->mutex); + err = aaudio_stream_init_impl(stm, guard); + } - int err = aaudio_stream_init_impl(stm, guard); if (err != CUBEB_OK) { - // This is needed since aaudio_stream_destroy will lock the mutex again. - // It's no problem that there is a gap in between as the stream isn't - // actually in use. - lock.unlock(); aaudio_stream_destroy(stm); return err; } |