summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2013-11-22 18:11:58 +0200
committerMartin Storsjo <martin@martin.st>2013-11-25 14:52:51 +0200
commit0c9045e42eebdfcfeb1d372e932f043bb99f7ad9 (patch)
tree869cb52069bca2deca4b3a5d3e8a3f0c518ac223 /media
parent5bf2560ce9b70bee077e0c264ac06648f0f63acc (diff)
downloadframeworks_av-0c9045e42eebdfcfeb1d372e932f043bb99f7ad9.zip
frameworks_av-0c9045e42eebdfcfeb1d372e932f043bb99f7ad9.tar.gz
frameworks_av-0c9045e42eebdfcfeb1d372e932f043bb99f7ad9.tar.bz2
ChromiumHTTPDataSource: Keep track of the redirected URL
This makes the code actually match an existing comment in DrmInitialization, which claimed that mURI was the redirected URL and not the original one. Change-Id: I0a5cc65f520f1482ff91320ae78af84a8a681ee3
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/chromium_http/ChromiumHTTPDataSource.cpp5
-rw-r--r--media/libstagefright/chromium_http/support.cpp1
-rw-r--r--media/libstagefright/include/ChromiumHTTPDataSource.h1
3 files changed, 7 insertions, 0 deletions
diff --git a/media/libstagefright/chromium_http/ChromiumHTTPDataSource.cpp b/media/libstagefright/chromium_http/ChromiumHTTPDataSource.cpp
index a862d8b..7e5c280 100644
--- a/media/libstagefright/chromium_http/ChromiumHTTPDataSource.cpp
+++ b/media/libstagefright/chromium_http/ChromiumHTTPDataSource.cpp
@@ -108,6 +108,11 @@ status_t ChromiumHTTPDataSource::connect_l(
return mState == CONNECTED ? OK : mIOResult;
}
+void ChromiumHTTPDataSource::onRedirect(const char *url) {
+ Mutex::Autolock autoLock(mLock);
+ mURI = url;
+}
+
void ChromiumHTTPDataSource::onConnectionEstablished(
int64_t contentSize, const char *contentType) {
Mutex::Autolock autoLock(mLock);
diff --git a/media/libstagefright/chromium_http/support.cpp b/media/libstagefright/chromium_http/support.cpp
index 0a8e3e3..3b33212 100644
--- a/media/libstagefright/chromium_http/support.cpp
+++ b/media/libstagefright/chromium_http/support.cpp
@@ -269,6 +269,7 @@ bool SfDelegate::getUID(uid_t *uid) const {
void SfDelegate::OnReceivedRedirect(
net::URLRequest *request, const GURL &new_url, bool *defer_redirect) {
MY_LOGV("OnReceivedRedirect");
+ mOwner->onRedirect(new_url.spec().c_str());
}
void SfDelegate::OnAuthRequired(
diff --git a/media/libstagefright/include/ChromiumHTTPDataSource.h b/media/libstagefright/include/ChromiumHTTPDataSource.h
index 785f939..da188dd 100644
--- a/media/libstagefright/include/ChromiumHTTPDataSource.h
+++ b/media/libstagefright/include/ChromiumHTTPDataSource.h
@@ -113,6 +113,7 @@ private:
void onConnectionFailed(status_t err);
void onReadCompleted(ssize_t size);
void onDisconnectComplete();
+ void onRedirect(const char *url);
void clearDRMState_l();