| Index: Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.cpp
|
| diff --git a/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.cpp b/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.cpp
|
| index 491969d5945e038c1bf6f200b75de05e885efb29..8e0bc4fe604ec6d3f6d0a1f1c8dc04c2d79c05ca 100644
|
| --- a/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.cpp
|
| +++ b/Source/modules/encryptedmedia/HTMLMediaElementEncryptedMedia.cpp
|
| @@ -515,8 +515,15 @@ void HTMLMediaElementEncryptedMedia::encrypted(HTMLMediaElement& element, const
|
|
|
| if (RuntimeEnabledFeatures::encryptedMediaEnabled()) {
|
| // Send event for WD EME.
|
| - // FIXME: Check origin before providing initData. http://crbug.com/418233.
|
| - RefPtrWillBeRawPtr<Event> event = createEncryptedEvent(initDataType, initData, initDataLength);
|
| + RefPtrWillBeRawPtr<Event> event;
|
| + if (element.mediaDataIsCORSSameOrigin(element.executionContext()->securityOrigin())) {
|
| + event = createEncryptedEvent(initDataType, initData, initDataLength);
|
| + } else {
|
| + // Current page is not allowed to see content from the media file,
|
| + // so don't return the initData. However, they still get an event.
|
| + event = createEncryptedEvent(emptyString(), nullptr, 0);
|
| + }
|
| +
|
| event->setTarget(&element);
|
| element.scheduleEvent(event.release());
|
| }
|
|
|