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

Unified Diff: webkit/media/crypto/ppapi/clear_key_cdm.cc

Issue 11348365: Encrypted Media: Allows empty key message to be fired. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years 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: webkit/media/crypto/ppapi/clear_key_cdm.cc
diff --git a/webkit/media/crypto/ppapi/clear_key_cdm.cc b/webkit/media/crypto/ppapi/clear_key_cdm.cc
index 3c3ce77e7f2072e89455e5b3eb839dc769a54046..b7243c8d7b9f21c3eb4f4735164aeeb0f4c1e229 100644
--- a/webkit/media/crypto/ppapi/clear_key_cdm.cc
+++ b/webkit/media/crypto/ppapi/clear_key_cdm.cc
@@ -235,12 +235,17 @@ cdm::Status ClearKeyCdm::GenerateKeyRequest(const char* type, int type_size,
client_.session_id().size());
latest_session_id_ = client_.session_id();
- // TODO(tomfinegan): Get rid of this copy.
- key_request->set_message(allocator_->Allocate(client_.key_message_length()));
- DCHECK(key_request->message());
- DCHECK_EQ(key_request->message()->size(), client_.key_message_length());
- memcpy(key_request->message()->data(),
- client_.key_message(), client_.key_message_length());
+ if (client_.key_message_length()) {
+ // TODO(tomfinegan): Get rid of this copy.
+ key_request->set_message(
+ allocator_->Allocate(client_.key_message_length()));
+ DCHECK(key_request->message());
+ DCHECK_EQ(key_request->message()->size(), client_.key_message_length());
+ memcpy(key_request->message()->data(),
+ client_.key_message(), client_.key_message_length());
+ } else {
+ key_request->set_message(NULL);
ddorwin 2012/12/04 01:44:10 Is this not the default?
xhwang 2012/12/04 01:58:51 You are right. Added DCHECK and removed "else".
+ }
key_request->set_default_url(client_.default_url().data(),
client_.default_url().size());

Powered by Google App Engine
This is Rietveld 408576698