| Index: media/blink/webcontentdecryptionmodulesession_impl.cc
|
| diff --git a/media/blink/webcontentdecryptionmodulesession_impl.cc b/media/blink/webcontentdecryptionmodulesession_impl.cc
|
| index d8ae46335f44b640d10b3d39eaddda15c24222ca..1a2b21c92e1877f31df8d221bfcdee37aaa8e20c 100644
|
| --- a/media/blink/webcontentdecryptionmodulesession_impl.cc
|
| +++ b/media/blink/webcontentdecryptionmodulesession_impl.cc
|
| @@ -104,6 +104,7 @@ static bool SanitizeInitData(EmeInitDataType init_data_type,
|
| size_t init_data_length,
|
| std::vector<uint8_t>* sanitized_init_data,
|
| std::string* error_message) {
|
| + DCHECK_GT(init_data_length, 0u);
|
| if (init_data_length > limits::kMaxInitDataLength) {
|
| error_message->assign("Initialization data too long.");
|
| return false;
|
| @@ -111,6 +112,11 @@ static bool SanitizeInitData(EmeInitDataType init_data_type,
|
|
|
| switch (init_data_type) {
|
| case EmeInitDataType::WEBM:
|
| + // |init_data| for WebM is a single key.
|
| + if (init_data_length > limits::kMaxKeyIdLength) {
|
| + error_message->assign("Initialization data for WebM is too long.");
|
| + return false;
|
| + }
|
| sanitized_init_data->assign(init_data, init_data + init_data_length);
|
| return true;
|
|
|
|
|