Source release v3.0.2
This commit is contained in:
@@ -288,13 +288,20 @@ Cdm::Status CdmImpl::generateRequest(const std::string& session_id,
|
||||
return kInvalidAccess;
|
||||
}
|
||||
|
||||
InitializationData init_data_obj(init_data_type_name, init_data);
|
||||
|
||||
if (init_data_obj.IsEmpty()) {
|
||||
LOGE("Failed to parse init data.");
|
||||
if (init_data.empty()) {
|
||||
LOGE("Empty init data is not valid.");
|
||||
return kInvalidAccess;
|
||||
}
|
||||
|
||||
InitializationData init_data_obj(init_data_type_name, init_data);
|
||||
if (init_data_obj.IsEmpty()) {
|
||||
// Note that InitializationData's idea of "empty" includes "failed to find
|
||||
// and parse a Widevine PSSH". This should not happen for WebM init data,
|
||||
// which requires no parsing.
|
||||
LOGE("Failed to parse init data, may not contain a Widevine PSSH.");
|
||||
return kNotSupported;
|
||||
}
|
||||
|
||||
std::string key_request;
|
||||
CdmKeyRequestType key_request_type;
|
||||
std::string ignored_server_url;
|
||||
@@ -404,6 +411,8 @@ Cdm::Status CdmImpl::update(const std::string& session_id,
|
||||
bool predicted_to_be_server_cert_response =
|
||||
property_set_.use_privacy_mode() &&
|
||||
property_set_.service_certificate().empty();
|
||||
(void)predicted_to_be_server_cert_response;
|
||||
// predicted_to_be_server_cert_response is now used when assertions are off.
|
||||
|
||||
// NOTE: If the CdmSession object recognizes that this is not the first
|
||||
// AddKey(), it will internally delegate to RenewKey().
|
||||
@@ -640,6 +649,11 @@ void CdmImpl::OnSessionRenewalNeeded(const CdmSessionId& session_id) {
|
||||
|
||||
LOGI("A license renewal has been generated.");
|
||||
MessageType message_type = kLicenseRenewal;
|
||||
|
||||
// Post the server_url before providing the message.
|
||||
// For systems that still require the server URL,
|
||||
// the listener will add the URL to its renewal request.
|
||||
listener_->onMessageUrl(session_id, server_url);
|
||||
listener_->onMessage(session_id, message_type, message);
|
||||
}
|
||||
|
||||
@@ -650,7 +664,6 @@ void CdmImpl::OnSessionKeysChange(const CdmSessionId& session_id,
|
||||
|
||||
CdmKeyStatusMap::const_iterator it;
|
||||
for (it = keys_status.begin(); it != keys_status.end(); ++it) {
|
||||
KeyStatus status;
|
||||
switch (it->second) {
|
||||
case kKeyStatusUsable:
|
||||
map[it->first] = kUsable;
|
||||
@@ -835,7 +848,8 @@ int64_t Clock::GetCurrentTime() {
|
||||
return host.clock->now() / 1000;
|
||||
}
|
||||
|
||||
struct File::Impl {
|
||||
class File::Impl {
|
||||
public:
|
||||
std::string name;
|
||||
bool read_only;
|
||||
bool truncate;
|
||||
|
||||
Reference in New Issue
Block a user