diff --git a/libwvdrmengine/cdm/core/src/cdm_session.cpp b/libwvdrmengine/cdm/core/src/cdm_session.cpp index 11c0b178..8d06e6ee 100644 --- a/libwvdrmengine/cdm/core/src/cdm_session.cpp +++ b/libwvdrmengine/cdm/core/src/cdm_session.cpp @@ -485,6 +485,7 @@ CdmResponseType CdmSession::GenerateKeyRequestInternal( switch (license_type) { case kLicenseTypeTemporary: is_temporary_ = true; + is_offline_ = false; break; case kLicenseTypeStreaming: is_offline_ = false; @@ -625,7 +626,7 @@ CdmResponseType CdmSession::AddKeyInternal(const CdmKeyResponse& key_response) { license_parser_->provider_session_token().c_str(), license_parser_->provider_session_token().size()); - if (is_offline_ || has_provider_session_token()) { + if ((is_offline_ || has_provider_session_token()) && !is_temporary_) { if (has_provider_session_token() && usage_support_type_ == kUsageEntrySupport && usage_table_header_ != nullptr) {