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()); |