summaryrefslogtreecommitdiffstats
path: root/media/libmedia
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2015-10-14 00:23:46 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-10-14 00:23:46 +0000
commitcfda8c4370515bcdfc688b1522f32ff59ba8abfd (patch)
treef18b2c66fe3d019bbdd5d2be9e6aa8450a92966f /media/libmedia
parent95c3a43ae474f327289670c8fc61a0ec003810af (diff)
parent39609a0a6d95d003b0f237e6c139b070b4df7071 (diff)
downloadframeworks_av-cfda8c4370515bcdfc688b1522f32ff59ba8abfd.zip
frameworks_av-cfda8c4370515bcdfc688b1522f32ff59ba8abfd.tar.gz
frameworks_av-cfda8c4370515bcdfc688b1522f32ff59ba8abfd.tar.bz2
Merge "AudioTrack: Skip callback EVENT_STREAM_END on DEAD_OBJECT." into mnc-dr-dev
Diffstat (limited to 'media/libmedia')
-rw-r--r--media/libmedia/AudioTrack.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp
index ab3d66a..d17f7ae 100644
--- a/media/libmedia/AudioTrack.cpp
+++ b/media/libmedia/AudioTrack.cpp
@@ -1852,7 +1852,11 @@ nsecs_t AudioTrack::processAudioBuffer()
case NO_ERROR:
case DEAD_OBJECT:
case TIMED_OUT:
- mCbf(EVENT_STREAM_END, mUserData, NULL);
+ if (status != DEAD_OBJECT) {
+ // for DEAD_OBJECT, we do not send a EVENT_STREAM_END after stop();
+ // instead, the application should handle the EVENT_NEW_IAUDIOTRACK.
+ mCbf(EVENT_STREAM_END, mUserData, NULL);
+ }
{
AutoMutex lock(mLock);
// The previously assigned value of waitStreamEnd is no longer valid,