Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1752)

Unified Diff: Source/modules/encryptedmedia/MediaKeySession.cpp

Issue 117323005: MediaKeySession: update(key) -> update(response). (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: comments addressed Created 6 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/modules/encryptedmedia/MediaKeySession.cpp
diff --git a/Source/modules/encryptedmedia/MediaKeySession.cpp b/Source/modules/encryptedmedia/MediaKeySession.cpp
index 0760ee356b0780ba0127f132c6ea8d9771a48813..6b00db12f5c386e3b95c67905703171cd9e6f3a7 100644
--- a/Source/modules/encryptedmedia/MediaKeySession.cpp
+++ b/Source/modules/encryptedmedia/MediaKeySession.cpp
@@ -49,7 +49,7 @@ MediaKeySession::MediaKeySession(ExecutionContext* context, ContentDecryptionMod
, m_session(cdm->createSession(this))
, m_keys(keys)
, m_keyRequestTimer(this, &MediaKeySession::keyRequestTimerFired)
- , m_addKeyTimer(this, &MediaKeySession::addKeyTimerFired)
+ , m_updateTimer(this, &MediaKeySession::updateTimerFired)
{
ScriptWrappable::init(this);
}
@@ -110,23 +110,25 @@ void MediaKeySession::keyRequestTimerFired(Timer<MediaKeySession>*)
}
}
-void MediaKeySession::update(Uint8Array* key, ExceptionState& exceptionState)
+void MediaKeySession::update(Uint8Array* response, ExceptionState& exceptionState)
{
- // From <http://dvcs.w3.org/hg/html-media/raw-file/default/encrypted-media/encrypted-media.html#dom-addkey>:
- // The addKey(key) method must run the following steps:
- // 1. If the first or second argument [sic] is null or an empty array, throw an InvalidAccessError.
- // NOTE: the reference to a "second argument" is a spec bug.
- if (!key || !key->length()) {
+ // From <https://dvcs.w3.org/hg/html-media/raw-file/default/encrypted-media/encrypted-media.html#dom-update>:
+ // The update(response) method must run the following steps:
+ // 1. If the argument is null or an empty array, throw an INVALID_ACCESS_ERR.
+ if (!response || !response->length()) {
exceptionState.throwUninformativeAndGenericDOMException(InvalidAccessError);
return;
}
- // 2. Schedule a task to handle the call, providing key.
- m_pendingKeys.append(key);
- m_addKeyTimer.startOneShot(0);
+ // 2. If the session is not in the PENDING state, throw an INVALID_STATE_ERR.
+ // FIXME: Implement states in MediaKeySession.
+
+ // 3. Schedule a task to handle the call, providing response.
+ m_pendingKeys.append(response);
+ m_updateTimer.startOneShot(0);
ddorwin 2014/01/07 01:10:43 abarth: Is it preferable to use Blink timers to "S
ddorwin 2014/01/07 02:41:21 Looking at the steps in the algorithm, there may n
xhwang 2014/01/07 17:33:53 I like posting the task here so that: * Blink impl
}
-void MediaKeySession::addKeyTimerFired(Timer<MediaKeySession>*)
+void MediaKeySession::updateTimerFired(Timer<MediaKeySession>*)
{
ASSERT(m_pendingKeys.size());
if (!m_session)

Powered by Google App Engine
This is Rietveld 408576698