From f0c86a83c687074be79397e082e3775ca56641b1 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Thu, 10 Nov 2011 12:40:30 -0800 Subject: Instead of asserting, signal a runtime error if the session doesn't contain any playable tracks at all. Change-Id: Ibbbe2fdcd53b7e020da80c84c8229856107a87e6 --- media/libstagefright/rtsp/MyHandler.h | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'media') diff --git a/media/libstagefright/rtsp/MyHandler.h b/media/libstagefright/rtsp/MyHandler.h index 6a5efa4..0dd93be 100644 --- a/media/libstagefright/rtsp/MyHandler.h +++ b/media/libstagefright/rtsp/MyHandler.h @@ -463,8 +463,17 @@ struct MyHandler : public AHandler { mBaseURL = tmp; } - CHECK_GT(mSessionDesc->countTracks(), 1u); - setupTrack(1); + if (mSessionDesc->countTracks() < 2) { + // There's no actual tracks in this session. + // The first "track" is merely session meta + // data. + + LOGW("Session doesn't contain any playable " + "tracks. Aborting."); + result = ERROR_UNSUPPORTED; + } else { + setupTrack(1); + } } } } @@ -783,9 +792,13 @@ struct MyHandler : public AHandler { } if (mNumAccessUnitsReceived == 0) { +#if 0 LOGI("stream ended? aborting."); (new AMessage('abor', id()))->post(); break; +#else + LOGI("haven't seen an AU in a looong time."); +#endif } mNumAccessUnitsReceived = 0; -- cgit v1.1