| Index: third_party/WebKit/Source/web/LocalFrameClientImpl.cpp
|
| diff --git a/third_party/WebKit/Source/web/LocalFrameClientImpl.cpp b/third_party/WebKit/Source/web/LocalFrameClientImpl.cpp
|
| index 6d41c4722aaa74a90af2d742fd2a925c88fa42b0..37de5421228b5e03a3cf8d884f1cad51eabbd9ca 100644
|
| --- a/third_party/WebKit/Source/web/LocalFrameClientImpl.cpp
|
| +++ b/third_party/WebKit/Source/web/LocalFrameClientImpl.cpp
|
| @@ -427,8 +427,13 @@ void LocalFrameClientImpl::dispatchDidStartProvisionalLoad(
|
| ResourceRequest& request) {
|
| if (m_webFrame->client()) {
|
| WrappedResourceRequest wrappedRequest(request);
|
| + DCHECK(!loader->originDocument() || loader->originDocument()->frame());
|
| + WebLocalFrame* initiatorFrame =
|
| + loader->originDocument()
|
| + ? WebLocalFrameImpl::fromFrame(loader->originDocument()->frame())
|
| + : nullptr;
|
| m_webFrame->client()->didStartProvisionalLoad(
|
| - WebDataSourceImpl::fromDocumentLoader(loader),
|
| + initiatorFrame, WebDataSourceImpl::fromDocumentLoader(loader),
|
| wrappedRequest);
|
| }
|
| if (WebDevToolsAgentImpl* devTools = devToolsAgent())
|
| @@ -528,6 +533,7 @@ static bool allowCreatingBackgroundTabs() {
|
| }
|
|
|
| NavigationPolicy LocalFrameClientImpl::decidePolicyForNavigation(
|
| + Document* originDocument,
|
| const ResourceRequest& request,
|
| DocumentLoader* loader,
|
| NavigationType type,
|
| @@ -727,11 +733,12 @@ DocumentLoader* LocalFrameClientImpl::createDocumentLoader(
|
| LocalFrame* frame,
|
| const ResourceRequest& request,
|
| const SubstituteData& data,
|
| - ClientRedirectPolicy clientRedirectPolicy) {
|
| + ClientRedirectPolicy clientRedirectPolicy,
|
| + Document* originDocument) {
|
| DCHECK(frame);
|
|
|
| - WebDataSourceImpl* ds =
|
| - WebDataSourceImpl::create(frame, request, data, clientRedirectPolicy);
|
| + WebDataSourceImpl* ds = WebDataSourceImpl::create(
|
| + frame, request, data, clientRedirectPolicy, originDocument);
|
| if (m_webFrame->client())
|
| m_webFrame->client()->didCreateDataSource(m_webFrame, ds);
|
| return ds;
|
|
|