diff options
author | Glenn Kasten <gkasten@google.com> | 2013-07-25 14:37:52 -0700 |
---|---|---|
committer | Glenn Kasten <gkasten@google.com> | 2013-07-25 14:44:51 -0700 |
commit | a8356f663014e7d4c27869629af83d8bb3441e19 (patch) | |
tree | af015d8d690aaf239b940d0ca65576bd795719c9 | |
parent | fc38a2e0268b5e531db2975c3a81462a3593c861 (diff) | |
download | frameworks_av-a8356f663014e7d4c27869629af83d8bb3441e19.zip frameworks_av-a8356f663014e7d4c27869629af83d8bb3441e19.tar.gz frameworks_av-a8356f663014e7d4c27869629af83d8bb3441e19.tar.bz2 |
Simplify RecordTrack::stop()
Change-Id: Ib959c1e9dc9544d12277ce11bea445118b2e0521
-rw-r--r-- | services/audioflinger/Threads.cpp | 3 | ||||
-rw-r--r-- | services/audioflinger/Threads.h | 2 | ||||
-rw-r--r-- | services/audioflinger/Tracks.cpp | 7 |
3 files changed, 4 insertions, 8 deletions
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp index f27d908..e2e023a 100644 --- a/services/audioflinger/Threads.cpp +++ b/services/audioflinger/Threads.cpp @@ -4031,8 +4031,9 @@ void AudioFlinger::RecordThread::handleSyncStartEvent(const sp<SyncEvent>& event } } -bool AudioFlinger::RecordThread::stop_l(RecordThread::RecordTrack* recordTrack) { +bool AudioFlinger::RecordThread::stop(RecordThread::RecordTrack* recordTrack) { ALOGV("RecordThread::stop"); + AutoMutex _l(mLock); if (recordTrack != mActiveTrack.get() || recordTrack->mState == TrackBase::PAUSING) { return false; } diff --git a/services/audioflinger/Threads.h b/services/audioflinger/Threads.h index 365c790..4c969d8 100644 --- a/services/audioflinger/Threads.h +++ b/services/audioflinger/Threads.h @@ -747,7 +747,7 @@ public: // ask the thread to stop the specified track, and // return true if the caller should then do it's part of the stopping process - bool stop_l(RecordTrack* recordTrack); + bool stop(RecordTrack* recordTrack); void dump(int fd, const Vector<String16>& args); AudioStreamIn* clearInput(); diff --git a/services/audioflinger/Tracks.cpp b/services/audioflinger/Tracks.cpp index d424e16..1df333f 100644 --- a/services/audioflinger/Tracks.cpp +++ b/services/audioflinger/Tracks.cpp @@ -1656,12 +1656,7 @@ void AudioFlinger::RecordThread::RecordTrack::stop() sp<ThreadBase> thread = mThread.promote(); if (thread != 0) { RecordThread *recordThread = (RecordThread *)thread.get(); - recordThread->mLock.lock(); - bool doStop = recordThread->stop_l(this); - if (doStop) { - } - recordThread->mLock.unlock(); - if (doStop) { + if (recordThread->stop(this)) { AudioSystem::stopInput(recordThread->id()); } } |