summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Shih <robertshih@google.com>2018-07-12 16:17:45 -0700
committerMSe1969 <mse1969@posteo.de>2018-09-13 10:51:34 +0200
commit17f78687c77a7bb724ea838aaaf5925689dee126 (patch)
tree6c1d9587208811cdb93f83641ff4e68ce8b7e9be
parent6487f37de7d51514f6b947ebf5f7b3e8175f85a8 (diff)
downloadframeworks_av-cm-11.0.tar.gz
frameworks_av-cm-11.0.tar.bz2
frameworks_av-cm-11.0.zip
M3UParser: handle missing EXT-X-MEDIA URIscm-11.0
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) CVE-2018-9440
-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 d79e24d23a..8ea5bbe476 100644
--- a/media/libstagefright/httplive/M3UParser.cpp
+++ b/media/libstagefright/httplive/M3UParser.cpp
@@ -221,7 +221,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;
}
}
@@ -383,7 +387,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());
}
return true;