Chromium Code Reviews| Index: media/cdm/ppapi/external_clear_key/clear_key_cdm.cc |
| diff --git a/media/cdm/ppapi/external_clear_key/clear_key_cdm.cc b/media/cdm/ppapi/external_clear_key/clear_key_cdm.cc |
| index b6c1934b33adb2957006c7332dc414e2724fe00e..501b775dfa8d83cbda624ea4c897daa449f415ed 100644 |
| --- a/media/cdm/ppapi/external_clear_key/clear_key_cdm.cc |
| +++ b/media/cdm/ppapi/external_clear_key/clear_key_cdm.cc |
| @@ -219,6 +219,16 @@ void ConvertCdmKeysInfo(const std::vector<media::CdmKeyInformation*>& keys_info, |
| } |
| } |
| +std::vector<media::CdmKeyInformation*> ConvertToRawPtrVector( |
| + const media::CdmKeysInfo& args) { |
| + std::vector<media::CdmKeyInformation*> args_rawptrs(args.size()); |
| + std::transform(args.begin(), args.end(), args_rawptrs.begin(), |
| + [](const std::unique_ptr<media::CdmKeyInformation>& arg) { |
| + return arg.get(); |
| + }); |
| + return args_rawptrs; |
| +} |
| + |
| void INITIALIZE_CDM_MODULE() { |
| DVLOG(1) << __func__; |
| #if defined(CLEAR_KEY_CDM_USE_FFMPEG_DECODER) |
| @@ -868,7 +878,7 @@ void ClearKeyCdm::OnSessionKeysChange(const std::string& session_id, |
| } |
| std::vector<cdm::KeyInformation> keys_vector; |
| - ConvertCdmKeysInfo(keys_info.get(), &keys_vector); |
| + ConvertCdmKeysInfo(ConvertToRawPtrVector(keys_info), &keys_vector); |
|
xhwang
2017/05/17 16:39:45
Instead of adding ConvertToRawPtrVector(), can you
xiaofengzhang
2017/05/18 05:43:26
Done.
|
| host_->OnSessionKeysChange(new_session_id.data(), new_session_id.length(), |
| has_additional_usable_key, keys_vector.data(), |
| keys_vector.size()); |
| @@ -943,7 +953,7 @@ void ClearKeyCdm::OnLoadSessionUpdated() { |
| keys_info.swap(keys_info_for_emulated_loadsession_); |
| has_received_keys_change_event_for_emulated_loadsession_ = false; |
| DCHECK(!keys_vector.empty()); |
| - ConvertCdmKeysInfo(keys_info.get(), &keys_vector); |
| + ConvertCdmKeysInfo(ConvertToRawPtrVector(keys_info), &keys_vector); |
| host_->OnSessionKeysChange(kLoadableSessionId, strlen(kLoadableSessionId), |
| !keys_vector.empty(), keys_vector.data(), |
| keys_vector.size()); |