| Index: webkit/renderer/media/crypto/proxy_decryptor.cc
|
| diff --git a/webkit/renderer/media/crypto/proxy_decryptor.cc b/webkit/renderer/media/crypto/proxy_decryptor.cc
|
| index 398a286b088a2ba2d72b974e23de447fb6b753f5..7706e9f53a9394dded2a78d3ef3b959dbdc1e308 100644
|
| --- a/webkit/renderer/media/crypto/proxy_decryptor.cc
|
| +++ b/webkit/renderer/media/crypto/proxy_decryptor.cc
|
| @@ -70,7 +70,7 @@ ProxyDecryptor::~ProxyDecryptor() {
|
| // Destroy the decryptor explicitly before destroying the plugin.
|
| {
|
| base::AutoLock auto_lock(lock_);
|
| - decryptor_.reset();
|
| + media_keys_.reset();
|
| }
|
| }
|
|
|
| @@ -92,8 +92,8 @@ void ProxyDecryptor::SetDecryptorReadyCB(
|
|
|
| // Normal decryptor request.
|
| DCHECK(decryptor_ready_cb_.is_null());
|
| - if (decryptor_) {
|
| - decryptor_ready_cb.Run(decryptor_.get());
|
| + if (media_keys_) {
|
| + decryptor_ready_cb.Run(media_keys_->GetDecryptor());
|
| return;
|
| }
|
| decryptor_ready_cb_ = decryptor_ready_cb;
|
| @@ -109,23 +109,23 @@ bool ProxyDecryptor::GenerateKeyRequest(const std::string& key_system,
|
|
|
| base::AutoLock auto_lock(lock_);
|
|
|
| - if (!decryptor_) {
|
| - decryptor_ = CreateDecryptor(key_system);
|
| - if (!decryptor_) {
|
| + if (!media_keys_) {
|
| + media_keys_ = CreateMediaKeys(key_system);
|
| + if (!media_keys_) {
|
| key_error_cb_.Run(
|
| key_system, std::string(), media::MediaKeys::kClientError, 0);
|
| return false;
|
| }
|
| }
|
|
|
| - if (!decryptor_->GetMediaKeys()->GenerateKeyRequest(
|
| + if (!media_keys_->GenerateKeyRequest(
|
| key_system, type, init_data, init_data_length)) {
|
| - decryptor_.reset();
|
| + media_keys_.reset();
|
| return false;
|
| }
|
|
|
| if (!decryptor_ready_cb_.is_null())
|
| - base::ResetAndReturn(&decryptor_ready_cb_).Run(decryptor_.get());
|
| + base::ResetAndReturn(&decryptor_ready_cb_).Run(media_keys_->GetDecryptor());
|
|
|
| return true;
|
| }
|
| @@ -139,7 +139,7 @@ void ProxyDecryptor::AddKey(const std::string& key_system,
|
| DVLOG(1) << "AddKey()";
|
|
|
| // WebMediaPlayerImpl ensures GenerateKeyRequest() has been called.
|
| - decryptor_->GetMediaKeys()->AddKey(
|
| + media_keys_->AddKey(
|
| key_system, key, key_length, init_data, init_data_length, session_id);
|
| }
|
|
|
| @@ -148,11 +148,11 @@ void ProxyDecryptor::CancelKeyRequest(const std::string& key_system,
|
| DVLOG(1) << "CancelKeyRequest()";
|
|
|
| // WebMediaPlayerImpl ensures GenerateKeyRequest() has been called.
|
| - decryptor_->GetMediaKeys()->CancelKeyRequest(key_system, session_id);
|
| + media_keys_->CancelKeyRequest(key_system, session_id);
|
| }
|
|
|
| #if defined(ENABLE_PEPPER_CDMS)
|
| -scoped_ptr<media::Decryptor> ProxyDecryptor::CreatePpapiDecryptor(
|
| +scoped_ptr<media::MediaKeys> ProxyDecryptor::CreatePpapiDecryptor(
|
| const std::string& key_system) {
|
| DCHECK(web_media_player_client_);
|
| DCHECK(web_frame_);
|
| @@ -163,11 +163,11 @@ scoped_ptr<media::Decryptor> ProxyDecryptor::CreatePpapiDecryptor(
|
| CreateHelperPlugin(plugin_type, web_media_player_client_, web_frame_);
|
| if (!plugin_instance.get()) {
|
| DVLOG(1) << "ProxyDecryptor: plugin instance creation failed.";
|
| - return scoped_ptr<media::Decryptor>();
|
| + return scoped_ptr<media::MediaKeys>();
|
| }
|
|
|
| // The new object will call destroy_plugin_cb to destroy Helper Plugin.
|
| - return scoped_ptr<media::Decryptor>(new PpapiDecryptor(
|
| + return scoped_ptr<media::MediaKeys>(new PpapiDecryptor(
|
| plugin_instance,
|
| base::Bind(&ProxyDecryptor::KeyAdded, weak_ptr_factory_.GetWeakPtr()),
|
| base::Bind(&ProxyDecryptor::KeyError, weak_ptr_factory_.GetWeakPtr()),
|
| @@ -178,10 +178,10 @@ scoped_ptr<media::Decryptor> ProxyDecryptor::CreatePpapiDecryptor(
|
| }
|
| #endif // defined(ENABLE_PEPPER_CDMS)
|
|
|
| -scoped_ptr<media::Decryptor> ProxyDecryptor::CreateDecryptor(
|
| +scoped_ptr<media::MediaKeys> ProxyDecryptor::CreateMediaKeys(
|
| const std::string& key_system) {
|
| if (CanUseAesDecryptor(key_system))
|
| - return scoped_ptr<media::Decryptor>(new media::AesDecryptor(
|
| + return scoped_ptr<media::MediaKeys>(new media::AesDecryptor(
|
| base::Bind(&ProxyDecryptor::KeyAdded, weak_ptr_factory_.GetWeakPtr()),
|
| base::Bind(&ProxyDecryptor::KeyError, weak_ptr_factory_.GetWeakPtr()),
|
| base::Bind(&ProxyDecryptor::KeyMessage, weak_ptr_factory_.GetWeakPtr()),
|
| @@ -193,7 +193,7 @@ scoped_ptr<media::Decryptor> ProxyDecryptor::CreateDecryptor(
|
| // |key_system|.
|
| return CreatePpapiDecryptor(key_system);
|
| #else
|
| - return scoped_ptr<media::Decryptor>();
|
| + return scoped_ptr<media::MediaKeys>();
|
| #endif // defined(ENABLE_PEPPER_CDMS)
|
| }
|
|
|
|
|