Index: chrome/browser/media/android/cdm/media_drm_credential_manager.cc |
diff --git a/chrome/browser/media/android/cdm/media_drm_credential_manager.cc b/chrome/browser/media/android/cdm/media_drm_credential_manager.cc |
index 26cbeca45035972ecee2839194a45eef8c5042f2..969f31274439097ab100436f6bb9aeb703d4bca9 100644 |
--- a/chrome/browser/media/android/cdm/media_drm_credential_manager.cc |
+++ b/chrome/browser/media/android/cdm/media_drm_credential_manager.cc |
@@ -11,8 +11,12 @@ |
#include "base/location.h" |
#include "base/single_thread_task_runner.h" |
#include "base/thread_task_runner_handle.h" |
+#include "chrome/browser/profiles/profile.h" |
+#include "chrome/browser/profiles/profile_manager.h" |
+#include "content/public/browser/android/cdm_provision_fetcher.h" |
#include "jni/MediaDrmCredentialManager_jni.h" |
#include "media/base/android/media_drm_bridge.h" |
+#include "media/base/android/provision_fetcher.h" |
#include "url/gurl.h" |
#include "widevine_cdm_version.h" // In SHARED_INTERMEDIATE_DIR. |
@@ -89,8 +93,16 @@ void MediaDrmCredentialManager::OnResetCredentialsCompleted( |
// TODO(ddorwin): The key system should be passed in. http://crbug.com/459400 |
bool MediaDrmCredentialManager::ResetCredentialsInternal( |
SecurityLevel security_level) { |
- media_drm_bridge_ = |
- media::MediaDrmBridge::CreateWithoutSessionSupport(kWidevineKeySystem); |
+ // Create media::ProvisionFetcher based on the last used profile. |
+ Profile* profile = ProfileManager::GetLastUsedProfile(); |
+ net::URLRequestContextGetter* context = profile->GetRequestContext(); |
+ |
+ // new content::URLProfisionFetcher(context); |
+ scoped_ptr<media::ProvisionFetcher> provision_fetcher = |
+ content::CDMProvisionFetcher::CreateWithURLContext(context); |
+ |
+ media_drm_bridge_ = media::MediaDrmBridge::CreateWithoutSessionSupport( |
+ kWidevineKeySystem, provision_fetcher.Pass()); |
if (!media_drm_bridge_) |
return false; |