diff options
Diffstat (limited to 'media/libstagefright')
-rw-r--r-- | media/libstagefright/httplive/LiveSession.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/media/libstagefright/httplive/LiveSession.cpp b/media/libstagefright/httplive/LiveSession.cpp index 62567be..30ac404 100644 --- a/media/libstagefright/httplive/LiveSession.cpp +++ b/media/libstagefright/httplive/LiveSession.cpp @@ -349,7 +349,11 @@ void LiveSession::onDownloadNext() { bool firstTime = (mPlaylist == NULL); mPlaylist = fetchPlaylist(url.c_str()); - CHECK(mPlaylist != NULL); + if (mPlaylist == NULL) { + LOGE("failed to load playlist at url '%s'", url.c_str()); + mDataSource->queueEOS(ERROR_IO); + return; + } if (firstTime) { Mutex::Autolock autoLock(mLock); @@ -446,7 +450,11 @@ void LiveSession::onDownloadNext() { sp<ABuffer> buffer; status_t err = fetchFile(uri.c_str(), &buffer); - CHECK_EQ(err, (status_t)OK); + if (err != OK) { + LOGE("failed to fetch .ts segment at url '%s'", uri.c_str()); + mDataSource->queueEOS(err); + return; + } CHECK_EQ((status_t)OK, decryptBuffer(mSeqNumber - firstSeqNumberInPlaylist, buffer)); |