diff options
author | Marco Nelissen <marcone@google.com> | 2014-09-19 15:14:37 -0700 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2014-09-19 22:55:08 +0000 |
commit | 705d3290102875409e334e2a80e64221714aa37c (patch) | |
tree | eedacd1d38c7ee5d162967765d6f4772fb8edde8 /media/libmediaplayerservice/nuplayer | |
parent | 4409ba46fab830d81860edba056c3dc6e1c7c003 (diff) | |
download | frameworks_av-705d3290102875409e334e2a80e64221714aa37c.zip frameworks_av-705d3290102875409e334e2a80e64221714aa37c.tar.gz frameworks_av-705d3290102875409e334e2a80e64221714aa37c.tar.bz2 |
Make prepare properly report failure again
Bug: 17583084
Bug: 17548451
Change-Id: I759d28eaafb520c206d54740c2c0a857b534d23c
Diffstat (limited to 'media/libmediaplayerservice/nuplayer')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/GenericSource.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/nuplayer/GenericSource.cpp b/media/libmediaplayerservice/nuplayer/GenericSource.cpp index 142107d..cf9c962 100644 --- a/media/libmediaplayerservice/nuplayer/GenericSource.cpp +++ b/media/libmediaplayerservice/nuplayer/GenericSource.cpp @@ -158,7 +158,12 @@ status_t NuPlayer::GenericSource::initFromDataSource() { int32_t totalBitrate = 0; - for (size_t i = 0; i < extractor->countTracks(); ++i) { + size_t numtracks = extractor->countTracks(); + if (numtracks == 0) { + return UNKNOWN_ERROR; + } + + for (size_t i = 0; i < numtracks; ++i) { sp<MediaSource> track = extractor->getTrack(i); sp<MetaData> meta = extractor->getTrackMetaData(i); |