summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Shih <robertshih@google.com>2018-07-12 16:17:45 -0700
committerandroid-build-team Robot <android-build-team-robot@google.com>2018-08-01 21:31:28 +0000
commit5de4f8d7ef816b682769c49630ee649f259de714 (patch)
tree03000525d11fcf9424f17e5d2ab8c7d43a071c9f
parente0423039809a28331899de03af03771206e6fe80 (diff)
downloadav-5de4f8d7ef816b682769c49630ee649f259de714.tar.gz
M3UParser: handle missing EXT-X-MEDIA URIs
Bug: 111381540 Test: http://devimages.apple.com.edgekey.net/streaming/examples/bipbop_16x9/bipbop_16x9_variant.m3u8 Change-Id: I57f6cea59ce4c25267385289ab805eefe74b04ac (cherry picked from commit b8c3a74de55a76e2ee21c731828a8afca7aa4ae0)
-rw-r--r--media/libstagefright/httplive/M3UParser.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/media/libstagefright/httplive/M3UParser.cpp b/media/libstagefright/httplive/M3UParser.cpp
index 52791b92a0..8ab33f752f 100644
--- a/media/libstagefright/httplive/M3UParser.cpp
+++ b/media/libstagefright/httplive/M3UParser.cpp
@@ -234,7 +234,11 @@ bool M3UParser::MediaGroup::getActiveURI(AString *uri, const char *baseURL) cons
if (mSelectedIndex >= 0 && i == (size_t)mSelectedIndex) {
const Media &item = mMediaItems.itemAt(i);
- *uri = item.makeURL(baseURL);
+ if (item.mURI.empty()) {
+ *uri = "";
+ } else {
+ *uri = item.makeURL(baseURL);
+ }
return true;
}
}
@@ -465,7 +469,7 @@ bool M3UParser::getTypeURI(size_t index, const char *key, AString *uri) const {
}
if ((*uri).empty()) {
- *uri = mItems.itemAt(index).mURI;
+ *uri = mItems.itemAt(index).makeURL(mBaseURI.c_str());
}
}