Index: media/base/android/media_player_bridge.cc |
diff --git a/media/base/android/media_player_bridge.cc b/media/base/android/media_player_bridge.cc |
index 214b52b486dc000d739bed703db6ca01d4edcc29..f07f11e3851c62c2670cfd325f5ba0741bde8771 100644 |
--- a/media/base/android/media_player_bridge.cc |
+++ b/media/base/android/media_player_bridge.cc |
@@ -209,6 +209,21 @@ void MediaPlayerBridge::OnDidSetDataUriDataSource(JNIEnv* env, jobject obj, |
void MediaPlayerBridge::OnCookiesRetrieved(const std::string& cookies) { |
cookies_ = cookies; |
+ manager()->GetMediaResourceGetter()->GetAuthCredentials( |
+ url_, |
+ base::Bind(&MediaPlayerBridge::OnAuthCredentialsRetrieved, |
+ weak_factory_.GetWeakPtr())); |
+} |
+ |
+void MediaPlayerBridge::OnAuthCredentialsRetrieved( |
+ const base::string16& username, const base::string16& password) { |
+ GURL::ReplacementsW replacements; |
+ if (!username.empty()) { |
+ replacements.SetUsernameStr(username); |
+ if (!password.empty()) |
+ replacements.SetPasswordStr(password); |
+ url_ = url_.ReplaceComponents(replacements); |
+ } |
ExtractMediaMetadata(url_.spec()); |
} |