Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(763)

Unified Diff: media/base/android/android_cdm_factory.cc

Issue 2823513002: [Clank] Load origin id before create MediaDrmBridge (Closed)
Patch Set: Rebase + Nit Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/base/android/android_cdm_factory.cc
diff --git a/media/base/android/android_cdm_factory.cc b/media/base/android/android_cdm_factory.cc
index 286cf0d9f34a6de95822495519318529a072a973..539ddada9d53d4c50315b80fef3f3ce411fe9005 100644
--- a/media/base/android/android_cdm_factory.cc
+++ b/media/base/android/android_cdm_factory.cc
@@ -18,6 +18,24 @@
#include "url/gurl.h"
namespace media {
+namespace {
+void OnCdmCreated(const std::string& key_system,
+ MediaDrmBridge::SecurityLevel security_level,
+ const CdmCreatedCB& bound_cdm_created_cb,
+ scoped_refptr<MediaDrmBridge> cdm) {
+ if (!cdm) {
+ std::string error_message = "MediaDrmBridge cannot be created for " +
+ key_system + " with security level " +
+ base::IntToString(security_level);
+ LOG(ERROR) << error_message;
+ bound_cdm_created_cb.Run(nullptr, error_message);
+ return;
+ }
+
+ // Success!
+ bound_cdm_created_cb.Run(cdm, "");
+}
+} // namespace
AndroidCdmFactory::AndroidCdmFactory(const CreateFetcherCB& create_fetcher_cb,
const CreateStorageCB& create_storage_cb)
@@ -80,20 +98,12 @@ void AndroidCdmFactory::Create(
return;
}
- scoped_refptr<MediaDrmBridge> cdm(MediaDrmBridge::Create(
- key_system, security_origin, security_level, create_fetcher_cb_,
- create_storage_cb_, session_message_cb, session_closed_cb,
- session_keys_change_cb, session_expiration_update_cb));
- if (!cdm) {
- error_message = "MediaDrmBridge cannot be created for " + key_system +
- " with security level " + base::IntToString(security_level);
- LOG(ERROR) << error_message;
- bound_cdm_created_cb.Run(nullptr, error_message);
- return;
- }
-
- // Success!
- bound_cdm_created_cb.Run(cdm, "");
+ MediaDrmBridge::Create(key_system, security_origin, security_level,
+ create_fetcher_cb_, create_storage_cb_,
+ session_message_cb, session_closed_cb,
+ session_keys_change_cb, session_expiration_update_cb,
+ base::BindOnce(&OnCdmCreated, key_system,
+ security_level, bound_cdm_created_cb));
}
} // namespace media
« no previous file with comments | « chrome/browser/media/android/cdm/media_drm_credential_manager.cc ('k') | media/base/android/media_drm_bridge.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698