Index: content/renderer/media/android/webmediaplayer_android.cc |
diff --git a/content/renderer/media/android/webmediaplayer_android.cc b/content/renderer/media/android/webmediaplayer_android.cc |
index 23fc99584b6efa703d82efeae347f6b695896476..8e1487fa83a7e3149346d9050171a2ee6b0ba0fa 100644 |
--- a/content/renderer/media/android/webmediaplayer_android.cc |
+++ b/content/renderer/media/android/webmediaplayer_android.cc |
@@ -25,6 +25,7 @@ |
#include "content/renderer/media/android/renderer_demuxer_android.h" |
#include "content/renderer/media/android/renderer_media_player_manager.h" |
#include "content/renderer/media/crypto/key_systems.h" |
+#include "content/renderer/media/crypto/render_cdm_factory.h" |
#include "content/renderer/media/crypto/renderer_cdm_manager.h" |
#include "content/renderer/media/webcontentdecryptionmodule_impl.h" |
#include "content/renderer/render_frame_impl.h" |
@@ -1515,7 +1516,6 @@ WebMediaPlayerAndroid::GenerateKeyRequestInternal( |
if (current_key_system_.empty()) { |
if (!proxy_decryptor_) { |
proxy_decryptor_.reset(new ProxyDecryptor( |
- cdm_manager_, |
base::Bind(&WebMediaPlayerAndroid::OnKeyAdded, |
weak_factory_.GetWeakPtr()), |
base::Bind(&WebMediaPlayerAndroid::OnKeyError, |
@@ -1525,8 +1525,12 @@ WebMediaPlayerAndroid::GenerateKeyRequestInternal( |
} |
GURL security_origin(frame_->document().securityOrigin().toString()); |
- if (!proxy_decryptor_->InitializeCDM(key_system, security_origin)) |
+ scoped_ptr<media::CdmFactory> cdm_factory( |
ddorwin
2014/10/17 16:32:04
You could also just have it on the stack and pass
xhwang
2014/10/17 20:09:22
Done.
|
+ new RenderCdmFactory(cdm_manager_)); |
+ if (!proxy_decryptor_->InitializeCDM( |
+ cdm_factory.get(), key_system, security_origin)) { |
return WebMediaPlayer::MediaKeyExceptionKeySystemNotSupported; |
+ } |
if (!decryptor_ready_cb_.is_null()) { |
base::ResetAndReturn(&decryptor_ready_cb_) |