| Index: Source/web/WebDOMMessageEvent.cpp
|
| diff --git a/Source/web/WebDOMMessageEvent.cpp b/Source/web/WebDOMMessageEvent.cpp
|
| index f050e01a89842a2fbfb7d6f9a7eaa3cb14bb37cc..fb6f1066a6cfcf29d8c05bd4ea28e11dad74c811 100644
|
| --- a/Source/web/WebDOMMessageEvent.cpp
|
| +++ b/Source/web/WebDOMMessageEvent.cpp
|
| @@ -55,6 +55,10 @@ void WebDOMMessageEvent::initMessageEvent(const WebString& type, bool canBubble,
|
| // TODO(alexmos): make ports work properly with OOPIF.
|
| if (sourceFrame && sourceFrame->isWebLocalFrame())
|
| ports = MessagePort::toMessagePortArray(toLocalDOMWindow(window)->document(), webChannels);
|
| + // Use an empty array for |ports| when it is null because this function
|
| + // is used to implement postMessage().
|
| + if (!ports)
|
| + ports = adoptPtrWillBeNoop(new MessagePortArray());
|
| unwrap<MessageEvent>()->initMessageEvent(type, canBubble, cancelable, messageData, origin, lastEventId, window, ports.release());
|
| }
|
|
|
|
|