Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cc216584 authored by Phil Burk's avatar Phil Burk Committed by Android Build Coastguard Worker
Browse files

aaudio: unlock when joining the timestamp thread

This will prevent a deadlock in case the timestamp
thread tries to acquire the same lock.

Bug: 182852602
Bug: 153358911
Test: plug and unplug headphones while playing
Change-Id: I625d191906c7e280f3a223f476716ef17b9098ea
Merged-In: I625d191906c7e280f3a223f476716ef17b9098ea
(cherry picked from commit 5f6fda77)
parent 084077fe
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -338,7 +338,12 @@ aaudio_result_t AAudioServiceStreamBase::stop_l() {

    setState(AAUDIO_STREAM_STATE_STOPPING);

    // Temporarily unlock because we are joining the timestamp thread and it may try
    // to acquire mLock.
    mLock.unlock();
    result = stopTimestampThread();
    mLock.lock();

    if (result != AAUDIO_OK) {
        disconnect_l();
        return result;