Diff
Modified: trunk/Source/WebCore/ChangeLog (218712 => 218713)
--- trunk/Source/WebCore/ChangeLog 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/ChangeLog 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1,3 +1,42 @@
+2017-06-22 Daniel Bates <[email protected]>
+
+ Make FrameLoadRequest a move-only type
+ https://bugs.webkit.org/show_bug.cgi?id=173682
+
+ Reviewed by Alex Christensen and Darin Adler.
+
+ A FrameLoadRequest groups together the information to perform a load into a single object
+ that is more manageable to pass around than its constituent parts. Code that receives a
+ FrameLoadRequest is expected to extract out the information it needs to complete its task.
+ And it does not make sense to re-use the same FrameLoadRequest object for more than one
+ load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
+
+ * inspector/InspectorFrontendClientLocal.cpp:
+ (WebCore::InspectorFrontendClientLocal::openInNewTab):
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::navigate):
+ * loader/FrameLoadRequest.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::changeLocation):
+ (WebCore::FrameLoader::urlSelected):
+ (WebCore::FrameLoader::loadURLIntoChildFrame):
+ (WebCore::FrameLoader::loadFrameRequest):
+ (WebCore::FrameLoader::loadURL):
+ (WebCore::FrameLoader::load):
+ (WebCore::FrameLoader::loadPostRequest):
+ (WebCore::createWindow):
+ * loader/FrameLoader.h:
+ * loader/NavigationScheduler.cpp:
+ (WebCore::NavigationScheduler::scheduleLocationChange):
+ * page/ContextMenuController.cpp:
+ (WebCore::openNewWindow):
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::createWindow):
+ * replay/UserInputBridge.cpp:
+ (WebCore::UserInputBridge::loadRequest):
+ * replay/UserInputBridge.h:
+
2017-06-22 Jer Noble <[email protected]>
REGRESSION (r217223): [iOS] Video keeps playing after application is backgrounded
Modified: trunk/Source/WebCore/inspector/InspectorFrontendClientLocal.cpp (218712 => 218713)
--- trunk/Source/WebCore/inspector/InspectorFrontendClientLocal.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/inspector/InspectorFrontendClientLocal.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -230,7 +230,7 @@
FrameLoadRequest frameLoadRequest { mainFrame.document()->securityOrigin(), ResourceRequest(), ASCIILiteral("_blank"), LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
bool created;
- RefPtr<Frame> frame = WebCore::createWindow(mainFrame, mainFrame, frameLoadRequest, { }, created);
+ RefPtr<Frame> frame = WebCore::createWindow(mainFrame, mainFrame, WTFMove(frameLoadRequest), { }, created);
if (!frame)
return;
@@ -240,7 +240,7 @@
// FIXME: Why do we compute the absolute URL with respect to |frame| instead of |mainFrame|?
ResourceRequest resourceRequest { frame->document()->completeURL(url) };
FrameLoadRequest frameLoadRequest2 { mainFrame.document()->securityOrigin(), resourceRequest, ASCIILiteral("_self"), LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
- frame->loader().changeLocation(frameLoadRequest2);
+ frame->loader().changeLocation(WTFMove(frameLoadRequest2));
}
void InspectorFrontendClientLocal::moveWindowBy(float x, float y)
Modified: trunk/Source/WebCore/inspector/InspectorPageAgent.cpp (218712 => 218713)
--- trunk/Source/WebCore/inspector/InspectorPageAgent.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/inspector/InspectorPageAgent.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -424,7 +424,7 @@
ResourceRequest resourceRequest { frame.document()->completeURL(url) };
FrameLoadRequest frameLoadRequest { frame.document()->securityOrigin(), resourceRequest, ASCIILiteral("_self"), LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::No, NewFrameOpenerPolicy::Allow, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
- frame.loader().changeLocation(frameLoadRequest);
+ frame.loader().changeLocation(WTFMove(frameLoadRequest));
}
static Ref<Inspector::Protocol::Page::Cookie> buildObjectForCookie(const Cookie& cookie)
Modified: trunk/Source/WebCore/loader/FrameLoadRequest.h (218712 => 218713)
--- trunk/Source/WebCore/loader/FrameLoadRequest.h 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/loader/FrameLoadRequest.h 2017-06-22 19:45:10 UTC (rev 218713)
@@ -52,22 +52,8 @@
}
WEBCORE_EXPORT FrameLoadRequest(Frame&, const ResourceRequest&, ShouldOpenExternalURLsPolicy, const SubstituteData& = SubstituteData());
- FrameLoadRequest(const FrameLoadRequest& other)
- : m_requester { other.m_requester.copyRef() }
- , m_resourceRequest { other.m_resourceRequest }
- , m_frameName { other.m_frameName }
- , m_substituteData { other.m_substituteData }
- , m_shouldCheckNewWindowPolicy { other.m_shouldCheckNewWindowPolicy }
- , m_lockHistory { other.m_lockHistory }
- , m_lockBackForwardList { other.m_lockBackForwardList }
- , m_shouldSendReferrer { other.m_shouldSendReferrer }
- , m_allowNavigationToInvalidURL { other.m_allowNavigationToInvalidURL }
- , m_newFrameOpenerPolicy { other.m_newFrameOpenerPolicy }
- , m_shouldReplaceDocumentIfJavaScriptURL { other.m_shouldReplaceDocumentIfJavaScriptURL }
- , m_shouldOpenExternalURLsPolicy { other.m_shouldOpenExternalURLsPolicy }
- , m_downloadAttribute { other.m_downloadAttribute }
- {
- }
+ FrameLoadRequest(FrameLoadRequest&&) = default;
+ FrameLoadRequest& operator=(FrameLoadRequest&&) = default;
bool isEmpty() const { return m_resourceRequest.isEmpty(); }
Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (218712 => 218713)
--- trunk/Source/WebCore/loader/FrameLoader.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/loader/FrameLoader.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -354,9 +354,9 @@
}
}
-void FrameLoader::changeLocation(const FrameLoadRequest& request)
+void FrameLoader::changeLocation(FrameLoadRequest&& request)
{
- urlSelected(request, nullptr);
+ urlSelected(WTFMove(request), nullptr);
}
void FrameLoader::urlSelected(const URL& url, const String& passedTarget, Event* triggeringEvent, LockHistory lockHistory, LockBackForwardList lockBackForwardList, ShouldSendReferrer shouldSendReferrer, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy, std::optional<NewFrameOpenerPolicy> openerPolicy, const AtomicString& downloadAttribute)
@@ -365,10 +365,9 @@
urlSelected(FrameLoadRequest(m_frame.document()->securityOrigin(), ResourceRequest(url), passedTarget, lockHistory, lockBackForwardList, shouldSendReferrer, AllowNavigationToInvalidURL::Yes, newFrameOpenerPolicy, shouldOpenExternalURLsPolicy, DoNotReplaceDocumentIfJavaScriptURL, downloadAttribute), triggeringEvent);
}
-void FrameLoader::urlSelected(const FrameLoadRequest& passedRequest, Event* triggeringEvent)
+void FrameLoader::urlSelected(FrameLoadRequest&& frameRequest, Event* triggeringEvent)
{
Ref<Frame> protect(m_frame);
- FrameLoadRequest frameRequest(passedRequest);
if (m_frame.script().executeIfJavaScriptURL(frameRequest.resourceRequest().url(), frameRequest.shouldReplaceDocumentIfJavaScriptURL()))
return;
@@ -379,7 +378,7 @@
addHTTPOriginIfNeeded(frameRequest.resourceRequest(), outgoingOrigin());
m_frame.document()->contentSecurityPolicy()->upgradeInsecureRequestIfNeeded(frameRequest.resourceRequest(), ContentSecurityPolicy::InsecureRequestType::Navigation);
- loadFrameRequest(frameRequest, triggeringEvent, nullptr);
+ loadFrameRequest(WTFMove(frameRequest), triggeringEvent, nullptr);
}
void FrameLoader::submitForm(Ref<FormSubmission>&& submission)
@@ -924,7 +923,7 @@
}
FrameLoadRequest frameLoadRequest { m_frame.document()->securityOrigin(), { url }, ASCIILiteral("_self"), LockHistory::No, LockBackForwardList::Yes, ShouldSendReferrer::MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Suppress, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
- childFrame->loader().loadURL(frameLoadRequest, referer, FrameLoadType::RedirectWithLockedBackForwardList, 0, 0);
+ childFrame->loader().loadURL(WTFMove(frameLoadRequest), referer, FrameLoadType::RedirectWithLockedBackForwardList, nullptr, nullptr);
}
#if ENABLE(WEB_ARCHIVE) || ENABLE(MHTML)
@@ -1157,7 +1156,7 @@
detachChildren();
}
-void FrameLoader::loadFrameRequest(const FrameLoadRequest& request, Event* event, FormState* formState)
+void FrameLoader::loadFrameRequest(FrameLoadRequest&& request, Event* event, FormState* formState)
{
// Protect frame from getting blown away inside dispatchBeforeLoadEvent in loadWithDocumentLoader.
auto protectFrame = makeRef(m_frame);
@@ -1186,10 +1185,11 @@
else
loadType = FrameLoadType::Standard;
+ String frameName = request.frameName();
if (request.resourceRequest().httpMethod() == "POST")
- loadPostRequest(request, referrer, loadType, event, formState);
+ loadPostRequest(WTFMove(request), referrer, loadType, event, formState);
else
- loadURL(request, referrer, loadType, event, formState);
+ loadURL(WTFMove(request), referrer, loadType, event, formState);
// FIXME: It's possible this targetFrame will not be the same frame that was targeted by the actual
// load if frame names have changed.
@@ -1196,7 +1196,7 @@
Frame* sourceFrame = formState ? formState->sourceDocument().frame() : &m_frame;
if (!sourceFrame)
sourceFrame = &m_frame;
- Frame* targetFrame = sourceFrame->loader().findFrameForNavigation(request.frameName());
+ Frame* targetFrame = sourceFrame->loader().findFrameForNavigation(frameName);
if (targetFrame && targetFrame != sourceFrame) {
if (Page* page = targetFrame->page())
page->chrome().focus();
@@ -1217,7 +1217,7 @@
return m_pageDismissalEventBeingDispatched == PageDismissalType::None && NavigationDisabler::isNavigationAllowed();
}
-void FrameLoader::loadURL(const FrameLoadRequest& frameLoadRequest, const String& referrer, FrameLoadType newLoadType, Event* event, FormState* formState)
+void FrameLoader::loadURL(FrameLoadRequest&& frameLoadRequest, const String& referrer, FrameLoadType newLoadType, Event* event, FormState* formState)
{
if (m_inStopAllLoaders)
return;
@@ -1247,11 +1247,10 @@
ASSERT(newLoadType != FrameLoadType::Same);
// The search for a target frame is done earlier in the case of form submission.
- Frame* targetFrame = isFormSubmission ? 0 : findFrameForNavigation(frameName);
+ Frame* targetFrame = isFormSubmission ? nullptr : findFrameForNavigation(frameName);
if (targetFrame && targetFrame != &m_frame) {
- FrameLoadRequest newFrameLoadRequest(frameLoadRequest);
- newFrameLoadRequest.setFrameName("_self");
- targetFrame->loader().loadURL(newFrameLoadRequest, referrer, newLoadType, event, formState);
+ frameLoadRequest.setFrameName("_self");
+ targetFrame->loader().loadURL(WTFMove(frameLoadRequest), referrer, newLoadType, event, formState);
return;
}
@@ -1314,10 +1313,8 @@
return SubstituteData(SharedBuffer::create(encodedSrcdoc.data(), encodedSrcdoc.length()), URL(), response, SubstituteData::SessionHistoryVisibility::Hidden);
}
-void FrameLoader::load(const FrameLoadRequest& passedRequest)
+void FrameLoader::load(FrameLoadRequest&& request)
{
- FrameLoadRequest request(passedRequest);
-
if (m_inStopAllLoaders)
return;
@@ -1326,7 +1323,7 @@
if (frame) {
request.setShouldCheckNewWindowPolicy(false);
if (&frame->loader() != this) {
- frame->loader().load(request);
+ frame->loader().load(WTFMove(request));
return;
}
}
@@ -1333,7 +1330,7 @@
}
if (request.shouldCheckNewWindowPolicy()) {
- NavigationAction action(request.resourceRequest(), NavigationType::Other, passedRequest.shouldOpenExternalURLsPolicy());
+ NavigationAction action(request.resourceRequest(), NavigationType::Other, request.shouldOpenExternalURLsPolicy());
policyChecker().checkNewWindowPolicy(action, request.resourceRequest(), nullptr, request.frameName(), [this] (const ResourceRequest& request, FormState* formState, const String& frameName, const NavigationAction& action, bool shouldContinue) {
continueLoadAfterNewWindowPolicy(request, formState, frameName, action, shouldContinue, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Suppress);
});
@@ -2693,7 +2690,7 @@
request.setHTTPHeaderField(HTTPHeaderName::UpgradeInsecureRequests, ASCIILiteral("1"));
}
-void FrameLoader::loadPostRequest(const FrameLoadRequest& request, const String& referrer, FrameLoadType loadType, Event* event, FormState* formState)
+void FrameLoader::loadPostRequest(FrameLoadRequest&& request, const String& referrer, FrameLoadType loadType, Event* event, FormState* formState)
{
String frameName = request.frameName();
LockHistory lockHistory = request.lockHistory();
@@ -3664,7 +3661,7 @@
return true;
}
-RefPtr<Frame> createWindow(Frame& openerFrame, Frame& lookupFrame, const FrameLoadRequest& request, const WindowFeatures& features, bool& created)
+RefPtr<Frame> createWindow(Frame& openerFrame, Frame& lookupFrame, FrameLoadRequest&& request, const WindowFeatures& features, bool& created)
{
ASSERT(!features.dialog || request.frameName().isEmpty());
@@ -3688,12 +3685,11 @@
}
// FIXME: Setting the referrer should be the caller's responsibility.
- FrameLoadRequest requestWithReferrer = request;
String referrer = SecurityPolicy::generateReferrerHeader(openerFrame.document()->referrerPolicy(), request.resourceRequest().url(), openerFrame.loader().outgoingReferrer());
if (!referrer.isEmpty())
- requestWithReferrer.resourceRequest().setHTTPReferrer(referrer);
- FrameLoader::addHTTPOriginIfNeeded(requestWithReferrer.resourceRequest(), openerFrame.loader().outgoingOrigin());
- FrameLoader::addHTTPUpgradeInsecureRequestsIfNeeded(requestWithReferrer.resourceRequest());
+ request.resourceRequest().setHTTPReferrer(referrer);
+ FrameLoader::addHTTPOriginIfNeeded(request.resourceRequest(), openerFrame.loader().outgoingOrigin());
+ FrameLoader::addHTTPUpgradeInsecureRequestsIfNeeded(request.resourceRequest());
Page* oldPage = openerFrame.page();
if (!oldPage)
@@ -3700,7 +3696,8 @@
return nullptr;
ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy = shouldOpenExternalURLsPolicyToApply(openerFrame, request.shouldOpenExternalURLsPolicy());
- Page* page = oldPage->chrome().createWindow(openerFrame, requestWithReferrer, features, NavigationAction(requestWithReferrer.resourceRequest(), NavigationType::Other, shouldOpenExternalURLsPolicy));
+ NavigationAction action { request.resourceRequest(), NavigationType::Other, shouldOpenExternalURLsPolicy };
+ Page* page = oldPage->chrome().createWindow(openerFrame, request, features, action);
if (!page)
return nullptr;
Modified: trunk/Source/WebCore/loader/FrameLoader.h (218712 => 218713)
--- trunk/Source/WebCore/loader/FrameLoader.h 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/loader/FrameLoader.h 2017-06-22 19:45:10 UTC (rev 218713)
@@ -108,9 +108,9 @@
// FIXME: These are all functions which start loads. We have too many.
WEBCORE_EXPORT void loadURLIntoChildFrame(const URL&, const String& referer, Frame*);
- WEBCORE_EXPORT void loadFrameRequest(const FrameLoadRequest&, Event*, FormState*); // Called by submitForm, calls loadPostRequest and loadURL.
+ WEBCORE_EXPORT void loadFrameRequest(FrameLoadRequest&&, Event*, FormState*); // Called by submitForm, calls loadPostRequest and loadURL.
- WEBCORE_EXPORT void load(const FrameLoadRequest&);
+ WEBCORE_EXPORT void load(FrameLoadRequest&&);
#if ENABLE(WEB_ARCHIVE) || ENABLE(MHTML)
WEBCORE_EXPORT void loadArchive(Ref<Archive>&&);
@@ -117,7 +117,7 @@
#endif
unsigned long loadResourceSynchronously(const ResourceRequest&, StoredCredentials, ClientCredentialPolicy, ResourceError&, ResourceResponse&, RefPtr<SharedBuffer>& data);
- void changeLocation(const FrameLoadRequest&);
+ void changeLocation(FrameLoadRequest&&);
WEBCORE_EXPORT void urlSelected(const URL&, const String& target, Event*, LockHistory, LockBackForwardList, ShouldSendReferrer, ShouldOpenExternalURLsPolicy, std::optional<NewFrameOpenerPolicy> = std::nullopt, const AtomicString& downloadAttribute = nullAtom);
void submitForm(Ref<FormSubmission>&&);
@@ -353,7 +353,7 @@
void dispatchDidCommitLoad(std::optional<HasInsecureContent> initialHasInsecureContent);
- void urlSelected(const FrameLoadRequest&, Event*);
+ void urlSelected(FrameLoadRequest&&, Event*);
void loadWithDocumentLoader(DocumentLoader*, FrameLoadType, FormState*, AllowNavigationToInvalidURL); // Calls continueLoadAfterNavigationPolicy
void load(DocumentLoader*); // Calls loadWithDocumentLoader
@@ -360,8 +360,8 @@
void loadWithNavigationAction(const ResourceRequest&, const NavigationAction&, LockHistory, FrameLoadType, FormState*, AllowNavigationToInvalidURL); // Calls loadWithDocumentLoader
- void loadPostRequest(const FrameLoadRequest&, const String& referrer, FrameLoadType, Event*, FormState*);
- void loadURL(const FrameLoadRequest&, const String& referrer, FrameLoadType, Event*, FormState*);
+ void loadPostRequest(FrameLoadRequest&&, const String& referrer, FrameLoadType, Event*, FormState*);
+ void loadURL(FrameLoadRequest&&, const String& referrer, FrameLoadType, Event*, FormState*);
bool shouldReload(const URL& currentURL, const URL& destinationURL);
@@ -469,6 +469,6 @@
//
// FIXME: Consider making this function part of an appropriate class (not FrameLoader)
// and moving it to a more appropriate location.
-RefPtr<Frame> createWindow(Frame& openerFrame, Frame& lookupFrame, const FrameLoadRequest&, const WindowFeatures&, bool& created);
+RefPtr<Frame> createWindow(Frame& openerFrame, Frame& lookupFrame, FrameLoadRequest&&, const WindowFeatures&, bool& created);
} // namespace WebCore
Modified: trunk/Source/WebCore/loader/NavigationScheduler.cpp (218712 => 218713)
--- trunk/Source/WebCore/loader/NavigationScheduler.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/loader/NavigationScheduler.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -125,7 +125,7 @@
ResourceRequest resourceRequest(m_url, m_referrer, UseProtocolCachePolicy);
FrameLoadRequest frameRequest(*m_securityOrigin, resourceRequest, "_self", lockHistory(), lockBackForwardList(), MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, shouldOpenExternalURLs());
- frame.loader().changeLocation(frameRequest);
+ frame.loader().changeLocation(WTFMove(frameRequest));
}
void didStartTimer(Frame& frame, Timer& timer) override
@@ -183,7 +183,7 @@
ResourceRequest resourceRequest(url(), referrer(), refresh ? ReloadIgnoringCacheData : UseProtocolCachePolicy);
FrameLoadRequest frameRequest(*securityOrigin(), resourceRequest, "_self", lockHistory(), lockBackForwardList(), MaybeSendReferrer, AllowNavigationToInvalidURL::No, NewFrameOpenerPolicy::Allow, shouldOpenExternalURLs());
- frame.loader().changeLocation(frameRequest);
+ frame.loader().changeLocation(WTFMove(frameRequest));
}
};
@@ -198,7 +198,7 @@
ResourceRequest resourceRequest(url(), referrer(), UseProtocolCachePolicy);
FrameLoadRequest frameRequest(*securityOrigin(), resourceRequest, "_self", lockHistory(), lockBackForwardList(), MaybeSendReferrer, AllowNavigationToInvalidURL::No, NewFrameOpenerPolicy::Allow, shouldOpenExternalURLs());
- frame.loader().changeLocation(frameRequest);
+ frame.loader().changeLocation(WTFMove(frameRequest));
}
};
@@ -215,7 +215,7 @@
ResourceRequest resourceRequest(url(), referrer(), ReloadIgnoringCacheData);
FrameLoadRequest frameRequest(*securityOrigin(), resourceRequest, "_self", lockHistory(), lockBackForwardList(), MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, shouldOpenExternalURLs());
- frame.loader().changeLocation(frameRequest);
+ frame.loader().changeLocation(WTFMove(frameRequest));
}
};
@@ -268,7 +268,7 @@
return;
FrameLoadRequest frameLoadRequest { requestingDocument.securityOrigin(), { }, { }, lockHistory(), lockBackForwardList(), MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, shouldOpenExternalURLs() };
m_submission->populateFrameLoadRequest(frameLoadRequest);
- frame.loader().loadFrameRequest(frameLoadRequest, m_submission->event(), &m_submission->state());
+ frame.loader().loadFrameRequest(WTFMove(frameLoadRequest), m_submission->event(), &m_submission->state());
}
void didStartTimer(Frame& frame, Timer& timer) override
@@ -318,7 +318,7 @@
ResourceRequest resourceRequest(m_originDocument.url(), emptyString(), ReloadIgnoringCacheData);
FrameLoadRequest frameLoadRequest { m_originDocument.securityOrigin(), resourceRequest, { }, lockHistory(), lockBackForwardList(), MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, shouldOpenExternalURLs() };
frameLoadRequest.setSubstituteData(replacementData);
- frame.loader().load(frameLoadRequest);
+ frame.loader().load(WTFMove(frameLoadRequest));
}
private:
@@ -416,7 +416,7 @@
if (url.hasFragmentIdentifier() && equalIgnoringFragmentIdentifier(m_frame.document()->url(), url)) {
ResourceRequest resourceRequest { m_frame.document()->completeURL(url), referrer, UseProtocolCachePolicy };
FrameLoadRequest frameLoadRequest { securityOrigin, resourceRequest, ASCIILiteral("_self"), lockHistory, lockBackForwardList, MaybeSendReferrer, AllowNavigationToInvalidURL::No, NewFrameOpenerPolicy::Allow, initiatingDocument.shouldOpenExternalURLsPolicyToPropagate() };
- loader.changeLocation(frameLoadRequest);
+ loader.changeLocation(WTFMove(frameLoadRequest));
return;
}
Modified: trunk/Source/WebCore/page/ContextMenuController.cpp (218712 => 218713)
--- trunk/Source/WebCore/page/ContextMenuController.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/page/ContextMenuController.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -195,7 +195,7 @@
if (!newPage)
return;
newPage->chrome().show();
- newPage->mainFrame().loader().loadFrameRequest(frameLoadRequest, nullptr, nullptr);
+ newPage->mainFrame().loader().loadFrameRequest(WTFMove(frameLoadRequest), nullptr, nullptr);
}
#if PLATFORM(GTK)
@@ -396,7 +396,7 @@
if (Frame* targetFrame = m_context.hitTestResult().targetFrame()) {
ResourceRequest resourceRequest { m_context.hitTestResult().absoluteLinkURL(), frame->loader().outgoingReferrer() };
FrameLoadRequest frameLoadRequest { frame->document()->securityOrigin(), resourceRequest, { }, LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Suppress, targetFrame->isMainFrame() ? ShouldOpenExternalURLsPolicy::ShouldAllow : ShouldOpenExternalURLsPolicy::ShouldNotAllow };
- targetFrame->loader().loadFrameRequest(frameLoadRequest, nullptr, nullptr);
+ targetFrame->loader().loadFrameRequest(WTFMove(frameLoadRequest), nullptr, nullptr);
} else
openNewWindow(m_context.hitTestResult().absoluteLinkURL(), *frame, ShouldOpenExternalURLsPolicy::ShouldAllow);
break;
Modified: trunk/Source/WebCore/page/DOMWindow.cpp (218712 => 218713)
--- trunk/Source/WebCore/page/DOMWindow.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/page/DOMWindow.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -2204,7 +2204,7 @@
// We pass the opener frame for the lookupFrame in case the active frame is different from
// the opener frame, and the name references a frame relative to the opener frame.
bool created;
- RefPtr<Frame> newFrame = WebCore::createWindow(*activeFrame, openerFrame, frameLoadRequest, windowFeatures, created);
+ RefPtr<Frame> newFrame = WebCore::createWindow(*activeFrame, openerFrame, WTFMove(frameLoadRequest), windowFeatures, created);
if (!newFrame)
return nullptr;
@@ -2221,7 +2221,7 @@
if (created) {
ResourceRequest resourceRequest { completedURL, referrer, UseProtocolCachePolicy };
FrameLoadRequest frameLoadRequest { activeWindow.document()->securityOrigin(), resourceRequest, ASCIILiteral("_self"), LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, activeDocument->shouldOpenExternalURLsPolicyToPropagate() };
- newFrame->loader().changeLocation(frameLoadRequest);
+ newFrame->loader().changeLocation(WTFMove(frameLoadRequest));
} else if (!urlString.isEmpty()) {
LockHistory lockHistory = ScriptController::processingUserGesture() ? LockHistory::No : LockHistory::Yes;
newFrame->navigationScheduler().scheduleLocationChange(*activeWindow.document(), activeWindow.document()->securityOrigin(), completedURL, referrer, lockHistory, LockBackForwardList::No);
Modified: trunk/Source/WebCore/replay/UserInputBridge.cpp (218712 => 218713)
--- trunk/Source/WebCore/replay/UserInputBridge.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/replay/UserInputBridge.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -237,9 +237,9 @@
return m_page.focusController().focusedOrMainFrame().eventHandler().logicalScrollRecursively(direction, granularity, nullptr);
}
-void UserInputBridge::loadRequest(const FrameLoadRequest& request, InputSource)
+void UserInputBridge::loadRequest(FrameLoadRequest&& request, InputSource)
{
- m_page.mainFrame().loader().load(request);
+ m_page.mainFrame().loader().load(WTFMove(request));
}
void UserInputBridge::reloadFrame(Frame* frame, OptionSet<ReloadOption> options, InputSource)
Modified: trunk/Source/WebCore/replay/UserInputBridge.h (218712 => 218713)
--- trunk/Source/WebCore/replay/UserInputBridge.h 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebCore/replay/UserInputBridge.h 2017-06-22 19:45:10 UTC (rev 218713)
@@ -88,7 +88,7 @@
bool logicalScrollRecursively(ScrollLogicalDirection, ScrollGranularity, InputSource source = InputSource::User);
// Navigation APIs.
- WEBCORE_EXPORT void loadRequest(const FrameLoadRequest&, InputSource source = InputSource::User);
+ WEBCORE_EXPORT void loadRequest(FrameLoadRequest&&, InputSource = InputSource::User);
WEBCORE_EXPORT void reloadFrame(Frame*, OptionSet<ReloadOption>, InputSource = InputSource::User);
WEBCORE_EXPORT void stopLoadingFrame(Frame*, InputSource source = InputSource::User);
WEBCORE_EXPORT bool tryClosePage(InputSource source = InputSource::User);
Modified: trunk/Source/WebKit/ios/ChangeLog (218712 => 218713)
--- trunk/Source/WebKit/ios/ChangeLog 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/ios/ChangeLog 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1,3 +1,19 @@
+2017-06-22 Daniel Bates <[email protected]>
+
+ Make FrameLoadRequest a move-only type
+ https://bugs.webkit.org/show_bug.cgi?id=173682
+
+ Reviewed by Alex Christensen and Darin Adler.
+
+ A FrameLoadRequest groups together the information to perform a load into a single object
+ that is more manageable to pass around than its constituent parts. Code that receives a
+ FrameLoadRequest is expected to extract out the information it needs to complete its task.
+ And it does not make sense to re-use the same FrameLoadRequest object for more than one
+ load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
+
+ * WebView/WebPDFViewPlaceholder.mm:
+ (-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
+
2017-06-21 Daniel Bates <[email protected]>
Cleanup FrameLoadRequest
Modified: trunk/Source/WebKit/ios/WebView/WebPDFViewPlaceholder.mm (218712 => 218713)
--- trunk/Source/WebKit/ios/WebView/WebPDFViewPlaceholder.mm 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/ios/WebView/WebPDFViewPlaceholder.mm 2017-06-22 19:45:10 UTC (rev 218713)
@@ -488,7 +488,7 @@
// Call to the frame loader because this is where our security checks are made.
Frame* frame = core([_dataSource webFrame]);
FrameLoadRequest frameLoadRequest { frame->document()->securityOrigin(), { URL }, { }, LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
- frame->loader().loadFrameRequest(frameLoadRequest, event.get(), nullptr);
+ frame->loader().loadFrameRequest(WTFMove(frameLoadRequest), event.get(), nullptr);
}
@end
Modified: trunk/Source/WebKit/mac/ChangeLog (218712 => 218713)
--- trunk/Source/WebKit/mac/ChangeLog 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/mac/ChangeLog 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1,3 +1,21 @@
+2017-06-22 Daniel Bates <[email protected]>
+
+ Make FrameLoadRequest a move-only type
+ https://bugs.webkit.org/show_bug.cgi?id=173682
+
+ Reviewed by Alex Christensen and Darin Adler.
+
+ A FrameLoadRequest groups together the information to perform a load into a single object
+ that is more manageable to pass around than its constituent parts. Code that receives a
+ FrameLoadRequest is expected to extract out the information it needs to complete its task.
+ And it does not make sense to re-use the same FrameLoadRequest object for more than one
+ load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
+
+ * Plugins/WebPluginController.mm:
+ (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
+ * WebView/WebPDFView.mm:
+ (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
+
2017-06-21 Antoine Quint <[email protected]>
Ensure DRT always logs rAF suspension debugging code
Modified: trunk/Source/WebKit/mac/Plugins/WebPluginController.mm (218712 => 218713)
--- trunk/Source/WebKit/mac/Plugins/WebPluginController.mm 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/mac/Plugins/WebPluginController.mm 2017-06-22 19:45:10 UTC (rev 218713)
@@ -501,7 +501,7 @@
FrameLoadRequest frameLoadRequest { *core(frame), request, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
frameLoadRequest.setFrameName(target);
frameLoadRequest.setShouldCheckNewWindowPolicy(true);
- core(frame)->loader().load(frameLoadRequest);
+ core(frame)->loader().load(WTFMove(frameLoadRequest));
}
}
Modified: trunk/Source/WebKit/mac/WebView/WebPDFView.mm (218712 => 218713)
--- trunk/Source/WebKit/mac/WebView/WebPDFView.mm 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/mac/WebView/WebPDFView.mm 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1039,7 +1039,7 @@
// Call to the frame loader because this is where our security checks are made.
Frame* frame = core([dataSource webFrame]);
FrameLoadRequest frameLoadRequest { frame->document()->securityOrigin(), { URL }, { }, LockHistory::No, LockBackForwardList::No, MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
- frame->loader().loadFrameRequest(frameLoadRequest, event.get(), nullptr);
+ frame->loader().loadFrameRequest(WTFMove(frameLoadRequest), event.get(), nullptr);
}
- (void)PDFViewOpenPDFInNativeApplication:(PDFView *)sender
Modified: trunk/Source/WebKit/win/ChangeLog (218712 => 218713)
--- trunk/Source/WebKit/win/ChangeLog 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/win/ChangeLog 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1,5 +1,28 @@
2017-06-22 Daniel Bates <[email protected]>
+ Make FrameLoadRequest a move-only type
+ https://bugs.webkit.org/show_bug.cgi?id=173682
+
+ Reviewed by Alex Christensen and Darin Adler.
+
+ A FrameLoadRequest groups together the information to perform a load into a single object
+ that is more manageable to pass around than its constituent parts. Code that receives a
+ FrameLoadRequest is expected to extract out the information it needs to complete its task.
+ And it does not make sense to re-use the same FrameLoadRequest object for more than one
+ load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
+
+ * Plugins/PluginView.cpp:
+ (WebCore::PluginView::start):
+ (WebCore::PluginView::performRequest):
+ (WebCore::PluginView::load):
+ (WebCore::PluginView::getURLNotify):
+ (WebCore::PluginView::getURL):
+ (WebCore::PluginView::handlePost):
+ * Plugins/PluginView.h:
+ (WebCore::PluginRequest::PluginRequest):
+
+2017-06-22 Daniel Bates <[email protected]>
+
[Win] Cleanup: Remove unnecessary include of header FrameLoadRequest.h
https://bugs.webkit.org/show_bug.cgi?id=173683
Modified: trunk/Source/WebKit/win/Plugins/PluginView.cpp (218712 => 218713)
--- trunk/Source/WebKit/win/Plugins/PluginView.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/win/Plugins/PluginView.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -258,7 +258,7 @@
FrameLoadRequest frameLoadRequest { m_parentFrame->document()->securityOrigin(), { }, { }, LockHistory::No, LockBackForwardList::No, ShouldSendReferrer::MaybeSendReferrer, AllowNavigationToInvalidURL::Yes, NewFrameOpenerPolicy::Allow, ShouldOpenExternalURLsPolicy::ShouldNotAllow };
frameLoadRequest.resourceRequest().setHTTPMethod("GET");
frameLoadRequest.resourceRequest().setURL(m_url);
- load(frameLoadRequest, false, 0);
+ load(WTFMove(frameLoadRequest), false, nullptr);
}
m_status = PluginStatusLoadedSuccessfully;
@@ -425,7 +425,7 @@
FrameLoadRequest frameLoadRequest { *m_parentFrame.get(), request->frameLoadRequest().resourceRequest(), ShouldOpenExternalURLsPolicy::ShouldNotAllow };
frameLoadRequest.setFrameName(targetFrameName);
frameLoadRequest.setShouldCheckNewWindowPolicy(true);
- m_parentFrame->loader().load(frameLoadRequest);
+ m_parentFrame->loader().load(WTFMove(frameLoadRequest));
// FIXME: <rdar://problem/4807469> This should be sent when the document has finished loading
if (request->sendNotification()) {
@@ -488,7 +488,7 @@
m_requestTimer.startOneShot(0_s);
}
-NPError PluginView::load(const FrameLoadRequest& frameLoadRequest, bool sendNotification, void* notifyData)
+NPError PluginView::load(FrameLoadRequest&& frameLoadRequest, bool sendNotification, void* notifyData)
{
ASSERT(frameLoadRequest.resourceRequest().httpMethod() == "GET" || frameLoadRequest.resourceRequest().httpMethod() == "POST");
@@ -516,7 +516,7 @@
} else if (!m_parentFrame->document()->securityOrigin().canDisplay(url))
return NPERR_GENERIC_ERROR;
- scheduleRequest(std::make_unique<PluginRequest>(frameLoadRequest, sendNotification, notifyData, arePopupsAllowed()));
+ scheduleRequest(std::make_unique<PluginRequest>(WTFMove(frameLoadRequest), sendNotification, notifyData, arePopupsAllowed()));
return NPERR_NO_ERROR;
}
@@ -539,7 +539,7 @@
frameLoadRequest.resourceRequest().setHTTPMethod("GET");
frameLoadRequest.resourceRequest().setURL(makeURL(m_parentFrame->document()->baseURL(), url));
- return load(frameLoadRequest, true, notifyData);
+ return load(WTFMove(frameLoadRequest), true, notifyData);
}
NPError PluginView::getURL(const char* url, const char* target)
@@ -549,7 +549,7 @@
frameLoadRequest.resourceRequest().setHTTPMethod("GET");
frameLoadRequest.resourceRequest().setURL(makeURL(m_parentFrame->document()->baseURL(), url));
- return load(frameLoadRequest, false, 0);
+ return load(WTFMove(frameLoadRequest), false, nullptr);
}
NPError PluginView::postURLNotify(const char* url, const char* target, uint32_t len, const char* buf, NPBool file, void* notifyData)
@@ -1093,7 +1093,7 @@
frameLoadRequest.resourceRequest().setHTTPHeaderFields(WTFMove(headerFields));
frameLoadRequest.resourceRequest().setHTTPBody(FormData::create(postData, postDataLength));
- return load(frameLoadRequest, sendNotification, notifyData);
+ return load(WTFMove(frameLoadRequest), sendNotification, notifyData);
}
void PluginView::invalidateWindowlessPluginRect(const IntRect& rect)
Modified: trunk/Source/WebKit/win/Plugins/PluginView.h (218712 => 218713)
--- trunk/Source/WebKit/win/Plugins/PluginView.h 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit/win/Plugins/PluginView.h 2017-06-22 19:45:10 UTC (rev 218713)
@@ -80,12 +80,14 @@
class PluginRequest {
WTF_MAKE_NONCOPYABLE(PluginRequest); WTF_MAKE_FAST_ALLOCATED;
public:
- PluginRequest(const FrameLoadRequest& frameLoadRequest, bool sendNotification, void* notifyData, bool shouldAllowPopups)
- : m_frameLoadRequest(frameLoadRequest)
- , m_notifyData(notifyData)
- , m_sendNotification(sendNotification)
- , m_shouldAllowPopups(shouldAllowPopups) { }
- public:
+ PluginRequest(FrameLoadRequest&& frameLoadRequest, bool sendNotification, void* notifyData, bool shouldAllowPopups)
+ : m_frameLoadRequest { WTFMove(frameLoadRequest) }
+ , m_notifyData { notifyData }
+ , m_sendNotification { sendNotification }
+ , m_shouldAllowPopups { shouldAllowPopups }
+ {
+ }
+
const FrameLoadRequest& frameLoadRequest() const { return m_frameLoadRequest; }
void* notifyData() const { return m_notifyData; }
bool sendNotification() const { return m_sendNotification; }
@@ -239,7 +241,7 @@
void platformDestroy();
static void setCurrentPluginView(PluginView*);
#if ENABLE(NETSCAPE_PLUGIN_API)
- NPError load(const FrameLoadRequest&, bool sendNotification, void* notifyData);
+ NPError load(FrameLoadRequest&&, bool sendNotification, void* notifyData);
NPError handlePost(const char* url, const char* target, uint32_t len, const char* buf, bool file, void* notifyData, bool sendNotification, bool allowHeaders);
NPError handlePostReadFile(Vector<char>& buffer, uint32_t len, const char* buf);
#endif
Modified: trunk/Source/WebKit2/ChangeLog (218712 => 218713)
--- trunk/Source/WebKit2/ChangeLog 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit2/ChangeLog 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1,3 +1,28 @@
+2017-06-22 Daniel Bates <[email protected]>
+
+ Make FrameLoadRequest a move-only type
+ https://bugs.webkit.org/show_bug.cgi?id=173682
+
+ Reviewed by Alex Christensen and Darin Adler.
+
+ A FrameLoadRequest groups together the information to perform a load into a single object
+ that is more manageable to pass around than its constituent parts. Code that receives a
+ FrameLoadRequest is expected to extract out the information it needs to complete its task.
+ And it does not make sense to re-use the same FrameLoadRequest object for more than one
+ load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
+
+ * WebProcess/Plugins/PluginView.cpp:
+ (WebKit::PluginView::URLRequest::create):
+ (WebKit::PluginView::URLRequest::URLRequest):
+ (WebKit::PluginView::performFrameLoadURLRequest):
+ (WebKit::PluginView::loadURL):
+ * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+ (WebKit::WebFrameLoaderClient::dispatchCreatePage):
+ * WebProcess/WebPage/WebInspector.cpp:
+ (WebKit::WebInspector::openInNewTab):
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::loadRequest):
+
2017-06-22 Chris Dumez <[email protected]>
Add release assertion in CallbackMap::invalidate()
Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp (218712 => 218713)
--- trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -86,9 +86,9 @@
class PluginView::URLRequest : public RefCounted<URLRequest> {
public:
- static Ref<PluginView::URLRequest> create(uint64_t requestID, const FrameLoadRequest& request, bool allowPopups)
+ static Ref<PluginView::URLRequest> create(uint64_t requestID, FrameLoadRequest&& request, bool allowPopups)
{
- return adoptRef(*new URLRequest(requestID, request, allowPopups));
+ return adoptRef(*new URLRequest(requestID, WTFMove(request), allowPopups));
}
uint64_t requestID() const { return m_requestID; }
@@ -97,10 +97,10 @@
bool allowPopups() const { return m_allowPopups; }
private:
- URLRequest(uint64_t requestID, const FrameLoadRequest& request, bool allowPopups)
- : m_requestID(requestID)
- , m_request(request)
- , m_allowPopups(allowPopups)
+ URLRequest(uint64_t requestID, FrameLoadRequest&& request, bool allowPopups)
+ : m_requestID { requestID }
+ , m_request { WTFMove(request) }
+ , m_allowPopups { allowPopups }
{
}
@@ -1202,7 +1202,7 @@
FrameLoadRequest frameLoadRequest { *frame, request->request(), ShouldOpenExternalURLsPolicy::ShouldNotAllow };
frameLoadRequest.setFrameName(request->target());
frameLoadRequest.setShouldCheckNewWindowPolicy(true);
- frame->loader().load(frameLoadRequest);
+ frame->loader().load(WTFMove(frameLoadRequest));
// FIXME: We don't know whether the window was successfully created here so we just assume that it worked.
// It's better than not telling the plug-in anything.
@@ -1402,7 +1402,7 @@
if (!referrer.isEmpty())
frameLoadRequest.resourceRequest().setHTTPReferrer(referrer);
- m_pendingURLRequests.append(URLRequest::create(requestID, frameLoadRequest, allowPopups));
+ m_pendingURLRequests.append(URLRequest::create(requestID, WTFMove(frameLoadRequest), allowPopups));
m_pendingURLRequestsTimer.startOneShot(0_s);
}
Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebInspector.cpp (218712 => 218713)
--- trunk/Source/WebKit2/WebProcess/WebPage/WebInspector.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebInspector.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -152,7 +152,7 @@
if (!newPage)
return;
- newPage->mainFrame().loader().load(frameLoadRequest);
+ newPage->mainFrame().loader().load(WTFMove(frameLoadRequest));
}
void WebInspector::evaluateScriptForTest(const String& script)
Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (218712 => 218713)
--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2017-06-22 19:41:08 UTC (rev 218712)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2017-06-22 19:45:10 UTC (rev 218713)
@@ -1219,7 +1219,7 @@
ShouldOpenExternalURLsPolicy externalURLsPolicy = static_cast<ShouldOpenExternalURLsPolicy>(loadParameters.shouldOpenExternalURLsPolicy);
frameLoadRequest.setShouldOpenExternalURLsPolicy(externalURLsPolicy);
- corePage()->userInputBridge().loadRequest(frameLoadRequest);
+ corePage()->userInputBridge().loadRequest(WTFMove(frameLoadRequest));
ASSERT(!m_pendingNavigationID);
}