Modified: branches/safari-607-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (240277 => 240278)
--- branches/safari-607-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2019-01-22 20:52:53 UTC (rev 240277)
+++ branches/safari-607-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2019-01-22 20:57:52 UTC (rev 240278)
@@ -241,8 +241,8 @@
// This controls what strategy we use for mouse wheel coalescing.
#define MERGE_WHEEL_EVENTS 1
-#define MESSAGE_CHECK(process, assertion) MESSAGE_CHECK_BASE(assertion, process->connection())
-#define MESSAGE_CHECK_URL(process, url) MESSAGE_CHECK_BASE(checkURLReceivedFromCurrentOrPreviousWebProcess(process, url), process->connection())
+#define MESSAGE_CHECK(process, assertion) MESSAGE_CHECK_BASE(assertion, process.connection())
+#define MESSAGE_CHECK_URL(process, url) MESSAGE_CHECK_BASE(checkURLReceivedFromCurrentOrPreviousWebProcess(process, url), process.connection())
#define RELEASE_LOG_IF_ALLOWED(channel, fmt, ...) RELEASE_LOG_IF(isAlwaysOnLoggingAllowed(), channel, "%p - WebPageProxy::" fmt, this, ##__VA_ARGS__)
@@ -1063,19 +1063,16 @@
RELEASE_LOG_IF_ALLOWED(Loading, "loadRequest: webPID = %i, pageID = %" PRIu64, m_process->processIdentifier(), m_pageID);
- if (!isValid())
- reattachToWebProcess();
-
auto navigation = m_navigationState->createLoadRequestNavigation(ResourceRequest(request), m_backForwardList->currentItem());
- loadRequestWithNavigationShared(m_process.copyRef(), navigation.get(), WTFMove(request), shouldOpenExternalURLsPolicy, userData, ShouldTreatAsContinuingLoad::No);
+ loadRequestWithNavigationShared(m_process, navigation.get(), WTFMove(request), shouldOpenExternalURLsPolicy, userData, ShouldTreatAsContinuingLoad::No);
return WTFMove(navigation);
}
-void WebPageProxy::loadRequestWithNavigationShared(Ref<WebProcessProxy>&& process, API::Navigation& navigation, ResourceRequest&& request, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, Optional<WebsitePoliciesData>&& websitePolicies)
+void WebPageProxy::loadRequestWithNavigationShared(WebProcessProxy& process, API::Navigation& navigation, ResourceRequest&& request, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, Optional<WebsitePoliciesData>&& websitePolicies)
{
ASSERT(!m_isClosed);
- RELEASE_LOG_IF_ALLOWED(Loading, "loadRequestWithNavigation: webPID = %i, pageID = %" PRIu64, process->processIdentifier(), m_pageID);
+ RELEASE_LOG_IF_ALLOWED(Loading, "loadRequestWithNavigation: webPID = %i, pageID = %" PRIu64, process.processIdentifier(), m_pageID);
auto transaction = m_pageLoadState.transaction();
@@ -1083,11 +1080,14 @@
if (shouldTreatAsContinuingLoad != ShouldTreatAsContinuingLoad::Yes)
m_pageLoadState.setPendingAPIRequestURL(transaction, url);
+ if (!isValid())
+ reattachToWebProcess();
+
LoadParameters loadParameters;
loadParameters.navigationID = navigation.navigationID();
loadParameters.request = WTFMove(request);
loadParameters.shouldOpenExternalURLsPolicy = (uint64_t)shouldOpenExternalURLsPolicy;
- loadParameters.userData = UserData(process->transformObjectsToHandles(userData).get());
+ loadParameters.userData = UserData(process.transformObjectsToHandles(userData).get());
loadParameters.shouldTreatAsContinuingLoad = shouldTreatAsContinuingLoad == ShouldTreatAsContinuingLoad::Yes;
loadParameters.websitePolicies = WTFMove(websitePolicies);
loadParameters.lockHistory = navigation.lockHistory();
@@ -1098,8 +1098,8 @@
willAcquireUniversalFileReadSandboxExtension(process);
addPlatformLoadParameters(loadParameters);
- process->send(Messages::WebPage::LoadRequest(loadParameters), m_pageID);
- process->responsivenessTimer().start();
+ process.send(Messages::WebPage::LoadRequest(loadParameters), m_pageID);
+ process.responsivenessTimer().start();
}
RefPtr<API::Navigation> WebPageProxy::loadFile(const String& fileURLString, const String& resourceDirectoryURLString, API::Object* userData)
@@ -1163,17 +1163,14 @@
return nullptr;
}
- if (!isValid())
- reattachToWebProcess();
-
auto navigation = m_navigationState->createLoadDataNavigation(std::make_unique<API::SubstituteData>(data.vector(), MIMEType, encoding, baseURL, userData));
- loadDataWithNavigationShared(m_process.copyRef(), navigation, data, MIMEType, encoding, baseURL, userData, ShouldTreatAsContinuingLoad::No);
+ loadDataWithNavigationShared(m_process, navigation, data, MIMEType, encoding, baseURL, userData, ShouldTreatAsContinuingLoad::No);
return WTFMove(navigation);
}
-void WebPageProxy::loadDataWithNavigationShared(Ref<WebProcessProxy>&& process, API::Navigation& navigation, const IPC::DataReference& data, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, Optional<WebsitePoliciesData>&& websitePolicies)
+void WebPageProxy::loadDataWithNavigationShared(WebProcessProxy& process, API::Navigation& navigation, const IPC::DataReference& data, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData, ShouldTreatAsContinuingLoad shouldTreatAsContinuingLoad, Optional<WebsitePoliciesData>&& websitePolicies)
{
- RELEASE_LOG_IF_ALLOWED(Loading, "loadDataWithNavigation: webPID = %i, pageID = %" PRIu64, process->processIdentifier(), m_pageID);
+ RELEASE_LOG_IF_ALLOWED(Loading, "loadDataWithNavigation: webPID = %i, pageID = %" PRIu64, process.processIdentifier(), m_pageID);
ASSERT(!m_isClosed);
@@ -1181,6 +1178,9 @@
m_pageLoadState.setPendingAPIRequestURL(transaction, !baseURL.isEmpty() ? baseURL : WTF::blankURL().string());
+ if (!isValid())
+ reattachToWebProcess();
+
LoadParameters loadParameters;
loadParameters.navigationID = navigation.navigationID();
loadParameters.data = ""
@@ -1188,13 +1188,13 @@
loadParameters.encodingName = encoding;
loadParameters.baseURLString = baseURL;
loadParameters.shouldTreatAsContinuingLoad = shouldTreatAsContinuingLoad == ShouldTreatAsContinuingLoad::Yes;
- loadParameters.userData = UserData(process->transformObjectsToHandles(userData).get());
+ loadParameters.userData = UserData(process.transformObjectsToHandles(userData).get());
loadParameters.websitePolicies = WTFMove(websitePolicies);
addPlatformLoadParameters(loadParameters);
- process->assumeReadAccessToBaseURL(*this, baseURL);
- process->send(Messages::WebPage::LoadData(loadParameters), m_pageID);
- process->responsivenessTimer().start();
+ process.assumeReadAccessToBaseURL(*this, baseURL);
+ process.send(Messages::WebPage::LoadData(loadParameters), m_pageID);
+ process.responsivenessTimer().start();
}
void WebPageProxy::loadAlternateHTML(const IPC::DataReference& htmlData, const String& encoding, const URL& baseURL, const URL& unreachableURL, API::Object* userData)
@@ -2098,7 +2098,7 @@
void WebPageProxy::didPerformDragControllerAction(uint64_t dragOperation, WebCore::DragHandlingMethod dragHandlingMethod, bool mouseIsOverFileInput, unsigned numberOfItemsToBeAccepted, const IntRect& insertionRect)
{
- MESSAGE_CHECK(m_process, dragOperation <= DragOperationDelete);
+ MESSAGE_CHECK(m_process.get(), dragOperation <= DragOperationDelete);
m_currentDragOperation = static_cast<DragOperation>(dragOperation);
m_currentDragHandlingMethod = dragHandlingMethod;
@@ -2405,7 +2405,7 @@
{
PageClientProtector protector(pageClient());
- MESSAGE_CHECK_URL(m_process, urlString);
+ MESSAGE_CHECK_URL(process(), urlString);
URL pluginURL = URL { URL(), urlString };
String newMimeType = mimeType.convertToASCIILowercase();
@@ -3669,8 +3669,8 @@
PageClientProtector protector(pageClient());
- MESSAGE_CHECK(m_process, !m_mainFrame);
- MESSAGE_CHECK(m_process, m_process->canCreateFrame(frameID));
+ MESSAGE_CHECK(m_process.get(), !m_mainFrame);
+ MESSAGE_CHECK(m_process.get(), m_process->canCreateFrame(frameID));
m_mainFrame = WebFrameProxy::create(*this, frameID);
@@ -3682,7 +3682,7 @@
{
PageClientProtector protector(pageClient());
- MESSAGE_CHECK(m_process, m_mainFrame);
+ MESSAGE_CHECK(m_process.get(), m_mainFrame);
// The DecidePolicyForNavigationActionSync IPC is synchronous and may therefore get processed before the DidCreateSubframe one.
// When this happens, decidePolicyForNavigationActionSync() calls didCreateSubframe() and we need to ignore the DidCreateSubframe
@@ -3690,7 +3690,7 @@
if (m_process->webFrame(frameID))
return;
- MESSAGE_CHECK(m_process, m_process->canCreateFrame(frameID));
+ MESSAGE_CHECK(m_process.get(), m_process->canCreateFrame(frameID));
auto subFrame = WebFrameProxy::create(*this, frameID);
@@ -3762,14 +3762,14 @@
void WebPageProxy::didStartProvisionalLoadForFrame(uint64_t frameID, uint64_t navigationID, URL&& url, URL&& unreachableURL, const UserData& userData)
{
- didStartProvisionalLoadForFrameShared(m_process.copyRef(), frameID, navigationID, WTFMove(url), WTFMove(unreachableURL), userData);
+ didStartProvisionalLoadForFrameShared(m_process, frameID, navigationID, WTFMove(url), WTFMove(unreachableURL), userData);
}
-void WebPageProxy::didStartProvisionalLoadForFrameShared(Ref<WebProcessProxy>&& process, uint64_t frameID, uint64_t navigationID, URL&& url, URL&& unreachableURL, const UserData& userData)
+void WebPageProxy::didStartProvisionalLoadForFrameShared(WebProcessProxy& process, uint64_t frameID, uint64_t navigationID, URL&& url, URL&& unreachableURL, const UserData& userData)
{
PageClientProtector protector(pageClient());
- WebFrameProxy* frame = process->webFrame(frameID);
+ WebFrameProxy* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
MESSAGE_CHECK_URL(process, url);
@@ -3778,8 +3778,8 @@
if (frame->isMainFrame() && navigationID)
navigation = navigationState().navigation(navigationID);
- LOG(Loading, "WebPageProxy %" PRIu64 " in process pid %i didStartProvisionalLoadForFrame to frameID %" PRIu64 ", navigationID %" PRIu64 ", url %s", m_pageID, process->processIdentifier(), frameID, navigationID, url.string().utf8().data());
- RELEASE_LOG_IF_ALLOWED(Loading, "didStartProvisionalLoadForFrame: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64, process->processIdentifier(), m_pageID, frameID);
+ LOG(Loading, "WebPageProxy %" PRIu64 " in process pid %i didStartProvisionalLoadForFrame to frameID %" PRIu64 ", navigationID %" PRIu64 ", url %s", m_pageID, process.processIdentifier(), frameID, navigationID, url.string().utf8().data());
+ RELEASE_LOG_IF_ALLOWED(Loading, "didStartProvisionalLoadForFrame: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64, process.processIdentifier(), m_pageID, frameID);
auto transaction = m_pageLoadState.transaction();
@@ -3798,24 +3798,24 @@
m_pageLoadState.commitChanges();
if (m_loaderClient)
- m_loaderClient->didStartProvisionalLoadForFrame(*this, *frame, navigation.get(), process->transformHandlesToObjects(userData.object()).get());
+ m_loaderClient->didStartProvisionalLoadForFrame(*this, *frame, navigation.get(), process.transformHandlesToObjects(userData.object()).get());
else if (frame->isMainFrame())
- m_navigationClient->didStartProvisionalNavigation(*this, navigation.get(), process->transformHandlesToObjects(userData.object()).get());
+ m_navigationClient->didStartProvisionalNavigation(*this, navigation.get(), process.transformHandlesToObjects(userData.object()).get());
}
void WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame(uint64_t frameID, uint64_t navigationID, ResourceRequest&& request, const UserData& userData)
{
- didReceiveServerRedirectForProvisionalLoadForFrameShared(m_process.copyRef(), frameID, navigationID, WTFMove(request), userData);
+ didReceiveServerRedirectForProvisionalLoadForFrameShared(m_process, frameID, navigationID, WTFMove(request), userData);
}
-void WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrameShared(Ref<WebProcessProxy>&& process, uint64_t frameID, uint64_t navigationID, ResourceRequest&& request, const UserData& userData)
+void WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrameShared(WebProcessProxy& process, uint64_t frameID, uint64_t navigationID, ResourceRequest&& request, const UserData& userData)
{
LOG(Loading, "WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame to frameID %" PRIu64 ", navigationID %" PRIu64 ", url %s", frameID, navigationID, request.url().string().utf8().data());
- RELEASE_LOG_IF_ALLOWED(Loading, "didReceiveServerRedirectForProvisionalLoadForFrame: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64, process->processIdentifier(), m_pageID, frameID);
+ RELEASE_LOG_IF_ALLOWED(Loading, "didReceiveServerRedirectForProvisionalLoadForFrame: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64, process.processIdentifier(), m_pageID, frameID);
PageClientProtector protector(pageClient());
- WebFrameProxy* frame = process->webFrame(frameID);
+ WebFrameProxy* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
MESSAGE_CHECK_URL(process, request.url());
@@ -3833,9 +3833,9 @@
m_pageLoadState.commitChanges();
if (m_loaderClient)
- m_loaderClient->didReceiveServerRedirectForProvisionalLoadForFrame(*this, *frame, frame->isMainFrame() ? navigation.get() : nullptr, process->transformHandlesToObjects(userData.object()).get());
+ m_loaderClient->didReceiveServerRedirectForProvisionalLoadForFrame(*this, *frame, frame->isMainFrame() ? navigation.get() : nullptr, process.transformHandlesToObjects(userData.object()).get());
else if (frame->isMainFrame())
- m_navigationClient->didReceiveServerRedirectForProvisionalNavigation(*this, navigation.get(), process->transformHandlesToObjects(userData.object()).get());
+ m_navigationClient->didReceiveServerRedirectForProvisionalNavigation(*this, navigation.get(), process.transformHandlesToObjects(userData.object()).get());
}
void WebPageProxy::willPerformClientRedirectForFrame(uint64_t frameID, const String& url, double delay, WebCore::LockBackForwardList)
@@ -3845,7 +3845,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
if (frame->isMainFrame())
m_navigationClient->willPerformClientRedirect(*this, url, delay);
@@ -3858,7 +3858,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
if (frame->isMainFrame())
m_navigationClient->didCancelClientRedirect(*this);
@@ -3866,14 +3866,14 @@
void WebPageProxy::didChangeProvisionalURLForFrame(uint64_t frameID, uint64_t navigationID, URL&& url)
{
- didChangeProvisionalURLForFrameShared(m_process.copyRef(), frameID, navigationID, WTFMove(url));
+ didChangeProvisionalURLForFrameShared(m_process, frameID, navigationID, WTFMove(url));
}
-void WebPageProxy::didChangeProvisionalURLForFrameShared(Ref<WebProcessProxy>&& process, uint64_t frameID, uint64_t, URL&& url)
+void WebPageProxy::didChangeProvisionalURLForFrameShared(WebProcessProxy& process, uint64_t frameID, uint64_t, URL&& url)
{
PageClientProtector protector(pageClient());
- WebFrameProxy* frame = process->webFrame(frameID);
+ WebFrameProxy* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
MESSAGE_CHECK(process, frame->frameLoadState().state() == FrameLoadState::State::Provisional);
MESSAGE_CHECK_URL(process, url);
@@ -3895,21 +3895,21 @@
return;
}
- didFailProvisionalLoadForFrameShared(m_process.copyRef(), frameID, frameSecurityOrigin, navigationID, provisionalURL, error, userData);
+ didFailProvisionalLoadForFrameShared(m_process, frameID, frameSecurityOrigin, navigationID, provisionalURL, error, userData);
}
-void WebPageProxy::didFailProvisionalLoadForFrameShared(Ref<WebProcessProxy>&& process, uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const String& provisionalURL, const ResourceError& error, const UserData& userData)
+void WebPageProxy::didFailProvisionalLoadForFrameShared(WebProcessProxy& process, uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const String& provisionalURL, const ResourceError& error, const UserData& userData)
{
- LOG(Loading, "(Loading) WebPageProxy %" PRIu64 " in web process pid %i didFailProvisionalLoadForFrame to provisionalURL %s", m_pageID, process->processIdentifier(), provisionalURL.utf8().data());
- RELEASE_LOG_IF_ALLOWED(Process, "didFailProvisionalLoadForFrame: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64 ", domain = %s, code = %d", process->processIdentifier(), m_pageID, frameID, error.domain().utf8().data(), error.errorCode());
+ LOG(Loading, "(Loading) WebPageProxy %" PRIu64 " in web process pid %i didFailProvisionalLoadForFrame to provisionalURL %s", m_pageID, process.processIdentifier(), provisionalURL.utf8().data());
+ RELEASE_LOG_IF_ALLOWED(Process, "didFailProvisionalLoadForFrame: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64 ", domain = %s, code = %d", process.processIdentifier(), m_pageID, frameID, error.domain().utf8().data(), error.errorCode());
PageClientProtector protector(pageClient());
- WebFrameProxy* frame = process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ WebFrameProxy* frame = process.webFrame(frameID);
+ MESSAGE_CHECK(m_process.get(), frame);
if (m_controlledByAutomation) {
- if (auto* automationSession = process->processPool().automationSession())
+ if (auto* automationSession = process.processPool().automationSession())
automationSession->navigationOccurredForFrame(*frame);
}
@@ -3934,12 +3934,12 @@
m_failingProvisionalLoadURL = provisionalURL;
if (m_loaderClient)
- m_loaderClient->didFailProvisionalLoadWithErrorForFrame(*this, *frame, navigation.get(), error, process->transformHandlesToObjects(userData.object()).get());
+ m_loaderClient->didFailProvisionalLoadWithErrorForFrame(*this, *frame, navigation.get(), error, process.transformHandlesToObjects(userData.object()).get());
else if (frame->isMainFrame())
- m_navigationClient->didFailProvisionalNavigationWithError(*this, *frame, navigation.get(), error, process->transformHandlesToObjects(userData.object()).get());
+ m_navigationClient->didFailProvisionalNavigationWithError(*this, *frame, navigation.get(), error, process.transformHandlesToObjects(userData.object()).get());
else {
// FIXME: Get the main frame's current navigation.
- m_navigationClient->didFailProvisionalLoadInSubframeWithError(*this, *frame, frameSecurityOrigin, nullptr, error, process->transformHandlesToObjects(userData.object()).get());
+ m_navigationClient->didFailProvisionalLoadInSubframeWithError(*this, *frame, frameSecurityOrigin, nullptr, error, process.transformHandlesToObjects(userData.object()).get());
}
m_failingProvisionalLoadURL = { };
@@ -3967,7 +3967,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
// FIXME: We should message check that navigationID is not zero here, but it's currently zero for some navigations through the page cache.
RefPtr<API::Navigation> navigation;
@@ -4061,7 +4061,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
if (m_controlledByAutomation) {
if (auto* automationSession = process().processPool().automationSession())
@@ -4085,7 +4085,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
// FIXME: We should message check that navigationID is not zero here, but it's currently zero for some navigations through the page cache.
RefPtr<API::Navigation> navigation;
@@ -4130,7 +4130,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
// FIXME: We should message check that navigationID is not zero here, but it's currently zero for some navigations through the page cache.
RefPtr<API::Navigation> navigation;
@@ -4172,8 +4172,8 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
- MESSAGE_CHECK_URL(m_process, url);
+ MESSAGE_CHECK(m_process.get(), frame);
+ MESSAGE_CHECK_URL(process(), url);
// FIXME: We should message check that navigationID is not zero here, but it's currently zero for some navigations through the page cache.
RefPtr<API::Navigation> navigation;
@@ -4225,7 +4225,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
auto transaction = m_pageLoadState.transaction();
@@ -4251,7 +4251,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
if (m_loaderClient)
m_loaderClient->didFirstVisuallyNonEmptyLayoutForFrame(*this, *frame, m_process->transformHandlesToObjects(userData.object()).get());
@@ -4282,7 +4282,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
auto transaction = m_pageLoadState.transaction();
m_pageLoadState.didDisplayOrRunInsecureContent(transaction);
@@ -4296,7 +4296,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
auto transaction = m_pageLoadState.transaction();
m_pageLoadState.didDisplayOrRunInsecureContent(transaction);
@@ -4319,7 +4319,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
frame->setIsFrameSet(value);
if (frame->isMainFrame())
@@ -4335,20 +4335,20 @@
void WebPageProxy::decidePolicyForNavigationActionAsync(uint64_t frameID, WebCore::SecurityOriginData&& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, FrameInfoData&& frameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, uint64_t listenerID)
{
- decidePolicyForNavigationActionAsyncShared(m_process.copyRef(), frameID, WTFMove(frameSecurityOrigin), navigationID, WTFMove(navigationActionData), WTFMove(frameInfoData), originatingPageID, originalRequest, WTFMove(request), WTFMove(requestBody), WTFMove(redirectResponse), userData, listenerID);
+ decidePolicyForNavigationActionAsyncShared(m_process, frameID, WTFMove(frameSecurityOrigin), navigationID, WTFMove(navigationActionData), WTFMove(frameInfoData), originatingPageID, originalRequest, WTFMove(request), WTFMove(requestBody), WTFMove(redirectResponse), userData, listenerID);
}
-void WebPageProxy::decidePolicyForNavigationActionAsyncShared(Ref<WebProcessProxy>&& process, uint64_t frameID, WebCore::SecurityOriginData&& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, FrameInfoData&& frameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, uint64_t listenerID)
+void WebPageProxy::decidePolicyForNavigationActionAsyncShared(WebProcessProxy& process, uint64_t frameID, WebCore::SecurityOriginData&& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, FrameInfoData&& frameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, uint64_t listenerID)
{
- auto* frame = process->webFrame(frameID);
+ auto* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
- decidePolicyForNavigationAction(process.copyRef(), *frame, WTFMove(frameSecurityOrigin), navigationID, WTFMove(navigationActionData), WTFMove(frameInfoData), originatingPageID, originalRequest, WTFMove(request), WTFMove(requestBody), WTFMove(redirectResponse), userData, PolicyDecisionSender::create([this, protectedThis = makeRef(*this), frameID, listenerID, process = process.copyRef()] (auto... args) {
+ decidePolicyForNavigationAction(process, *frame, WTFMove(frameSecurityOrigin), navigationID, WTFMove(navigationActionData), WTFMove(frameInfoData), originatingPageID, originalRequest, WTFMove(request), WTFMove(requestBody), WTFMove(redirectResponse), userData, PolicyDecisionSender::create([this, protectedThis = makeRef(*this), frameID, listenerID, process = makeRef(process)] (auto... args) {
process->send(Messages::WebPage::DidReceivePolicyDecision(frameID, listenerID, args...), m_pageID);
}));
}
-void WebPageProxy::decidePolicyForNavigationAction(Ref<WebProcessProxy>&& process, WebFrameProxy& frame, WebCore::SecurityOriginData&& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, FrameInfoData&& originatingFrameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, Ref<PolicyDecisionSender>&& sender)
+void WebPageProxy::decidePolicyForNavigationAction(WebProcessProxy& process, WebFrameProxy& frame, WebCore::SecurityOriginData&& frameSecurityOrigin, uint64_t navigationID, NavigationActionData&& navigationActionData, FrameInfoData&& originatingFrameInfoData, uint64_t originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, Ref<PolicyDecisionSender>&& sender)
{
LOG(Loading, "WebPageProxy::decidePolicyForNavigationAction - Original URL %s, current target URL %s", originalRequest.url().string().utf8().data(), request.url().string().utf8().data());
@@ -4390,7 +4390,7 @@
}
uint64_t newNavigationID = navigation->navigationID();
- navigation->setCurrentRequest(ResourceRequest(request), process->coreProcessIdentifier());
+ navigation->setCurrentRequest(ResourceRequest(request), process.coreProcessIdentifier());
navigation->setLastNavigationAction(navigationActionData);
navigation->setOriginatingFrameInfo(originatingFrameInfoData);
navigation->setDestinationFrameSecurityOrigin(frameSecurityOrigin);
@@ -4449,13 +4449,13 @@
beginSafeBrowsingCheck(request.url(), frame.isMainFrame(), listener);
API::Navigation* mainFrameNavigation = frame.isMainFrame() ? navigation.get() : nullptr;
- WebFrameProxy* originatingFrame = process->webFrame(originatingFrameInfoData.frameID);
+ WebFrameProxy* originatingFrame = process.webFrame(originatingFrameInfoData.frameID);
if (auto* resourceLoadStatisticsStore = websiteDataStore().resourceLoadStatistics())
resourceLoadStatisticsStore->logFrameNavigation(frame, URL(URL(), m_pageLoadState.url()), request, redirectResponse.url());
if (m_policyClient)
- m_policyClient->decidePolicyForNavigationAction(*this, &frame, WTFMove(navigationActionData), originatingFrame, originalRequest, WTFMove(request), WTFMove(listener), process->transformHandlesToObjects(userData.object()).get());
+ m_policyClient->decidePolicyForNavigationAction(*this, &frame, WTFMove(navigationActionData), originatingFrame, originalRequest, WTFMove(request), WTFMove(listener), process.transformHandlesToObjects(userData.object()).get());
else {
auto destinationFrameInfo = API::FrameInfo::create(frame, frameSecurityOrigin.securityOrigin());
RefPtr<API::FrameInfo> sourceFrameInfo;
@@ -4462,14 +4462,14 @@
if (!fromAPI && originatingFrame == &frame)
sourceFrameInfo = destinationFrameInfo.copyRef();
else if (!fromAPI)
- sourceFrameInfo = API::FrameInfo::create(originatingFrameInfoData, originatingPageID ? process->webPage(originatingPageID) : nullptr);
+ sourceFrameInfo = API::FrameInfo::create(originatingFrameInfoData, originatingPageID ? process.webPage(originatingPageID) : nullptr);
- auto userInitiatedActivity = process->userInitiatedActivity(navigationActionData.userGestureTokenIdentifier);
+ auto userInitiatedActivity = process.userInitiatedActivity(navigationActionData.userGestureTokenIdentifier);
bool shouldOpenAppLinks = !m_shouldSuppressAppLinksInNextNavigationPolicyDecision && destinationFrameInfo->isMainFrame() && !hostsAreEqual(URL({ }, m_mainFrame->url()), request.url()) && navigationActionData.navigationType != WebCore::NavigationType::BackForward;
auto navigationAction = API::NavigationAction::create(WTFMove(navigationActionData), sourceFrameInfo.get(), destinationFrameInfo.ptr(), WTF::nullopt, WTFMove(request), originalRequest.url(), shouldOpenAppLinks, WTFMove(userInitiatedActivity), mainFrameNavigation);
- m_navigationClient->decidePolicyForNavigationAction(*this, WTFMove(navigationAction), WTFMove(listener), process->transformHandlesToObjects(userData.object()).get());
+ m_navigationClient->decidePolicyForNavigationAction(*this, WTFMove(navigationAction), WTFMove(listener), process.transformHandlesToObjects(userData.object()).get());
}
m_shouldSuppressAppLinksInNextNavigationPolicyDecision = false;
@@ -4491,7 +4491,7 @@
RELEASE_ASSERT(frame);
}
- decidePolicyForNavigationAction(m_process.copyRef(), *frame, WTFMove(frameSecurityOrigin), navigationID, WTFMove(navigationActionData), WTFMove(frameInfoData), originatingPageID, originalRequest, WTFMove(request), WTFMove(requestBody), WTFMove(redirectResponse), userData, sender.copyRef());
+ decidePolicyForNavigationAction(m_process, *frame, WTFMove(frameSecurityOrigin), navigationID, WTFMove(navigationActionData), WTFMove(frameInfoData), originatingPageID, originalRequest, WTFMove(request), WTFMove(requestBody), WTFMove(redirectResponse), userData, sender.copyRef());
// If the client did not respond synchronously, proceed with the load.
sender->send(WebPolicyAction::Use, navigationID, DownloadID(), WTF::nullopt);
@@ -4502,8 +4502,8 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
- MESSAGE_CHECK_URL(m_process, request.url());
+ MESSAGE_CHECK(m_process.get(), frame);
+ MESSAGE_CHECK_URL(process(), request.url());
auto listener = makeRef(frame->setUpPolicyListenerProxy([this, protectedThis = makeRef(*this), listenerID, frameID] (WebPolicyAction policyAction, API::WebsitePolicies*, ProcessSwapRequestedByClient processSwapRequestedByClient, RefPtr<SafeBrowsingWarning>&& safeBrowsingWarning) mutable {
// FIXME: Assert the API::WebsitePolicies* is nullptr here once clients of WKFramePolicyListenerUseWithPolicies go away.
@@ -4533,22 +4533,22 @@
void WebPageProxy::decidePolicyForResponse(uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const ResourceResponse& response, const ResourceRequest& request, bool canShowMIMEType, uint64_t listenerID, const UserData& userData)
{
- decidePolicyForResponseShared(m_process.copyRef(), frameID, frameSecurityOrigin, navigationID, response, request, canShowMIMEType, listenerID, userData);
+ decidePolicyForResponseShared(m_process, frameID, frameSecurityOrigin, navigationID, response, request, canShowMIMEType, listenerID, userData);
}
-void WebPageProxy::decidePolicyForResponseShared(Ref<WebProcessProxy>&& process, uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const ResourceResponse& response, const ResourceRequest& request, bool canShowMIMEType, uint64_t listenerID, const UserData& userData)
+void WebPageProxy::decidePolicyForResponseShared(WebProcessProxy& process, uint64_t frameID, const SecurityOriginData& frameSecurityOrigin, uint64_t navigationID, const ResourceResponse& response, const ResourceRequest& request, bool canShowMIMEType, uint64_t listenerID, const UserData& userData)
{
PageClientProtector protector(pageClient());
m_decidePolicyForResponseRequest = request;
- WebFrameProxy* frame = process->webFrame(frameID);
+ WebFrameProxy* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
MESSAGE_CHECK_URL(process, request.url());
MESSAGE_CHECK_URL(process, response.url());
RefPtr<API::Navigation> navigation = navigationID ? m_navigationState->navigation(navigationID) : nullptr;
- auto listener = makeRef(frame->setUpPolicyListenerProxy([this, protectedThis = makeRef(*this), frameID, listenerID, navigation = WTFMove(navigation), process = process.copyRef()] (WebPolicyAction policyAction, API::WebsitePolicies*, ProcessSwapRequestedByClient processSwapRequestedByClient, RefPtr<SafeBrowsingWarning>&& safeBrowsingWarning) mutable {
+ auto listener = makeRef(frame->setUpPolicyListenerProxy([this, protectedThis = makeRef(*this), frameID, listenerID, navigation = WTFMove(navigation), process = makeRef(process)] (WebPolicyAction policyAction, API::WebsitePolicies*, ProcessSwapRequestedByClient processSwapRequestedByClient, RefPtr<SafeBrowsingWarning>&& safeBrowsingWarning) mutable {
// FIXME: Assert the API::WebsitePolicies* is nullptr here once clients of WKFramePolicyListenerUseWithPolicies go away.
RELEASE_ASSERT(processSwapRequestedByClient == ProcessSwapRequestedByClient::No);
ASSERT_UNUSED(safeBrowsingWarning, !safeBrowsingWarning);
@@ -4558,10 +4558,10 @@
}, ShouldExpectSafeBrowsingResult::No));
if (m_policyClient)
- m_policyClient->decidePolicyForResponse(*this, *frame, response, request, canShowMIMEType, WTFMove(listener), process->transformHandlesToObjects(userData.object()).get());
+ m_policyClient->decidePolicyForResponse(*this, *frame, response, request, canShowMIMEType, WTFMove(listener), process.transformHandlesToObjects(userData.object()).get());
else {
auto navigationResponse = API::NavigationResponse::create(API::FrameInfo::create(*frame, frameSecurityOrigin.securityOrigin()).get(), request, response, canShowMIMEType);
- m_navigationClient->decidePolicyForNavigationResponse(*this, WTFMove(navigationResponse), WTFMove(listener), process->transformHandlesToObjects(userData.object()).get());
+ m_navigationClient->decidePolicyForNavigationResponse(*this, WTFMove(navigationResponse), WTFMove(listener), process.transformHandlesToObjects(userData.object()).get());
}
}
@@ -4570,7 +4570,7 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
if (!m_policyClient)
return;
@@ -4582,10 +4582,10 @@
void WebPageProxy::willSubmitForm(uint64_t frameID, uint64_t sourceFrameID, const Vector<std::pair<String, String>>& textFieldValues, uint64_t listenerID, const UserData& userData)
{
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
WebFrameProxy* sourceFrame = m_process->webFrame(sourceFrameID);
- MESSAGE_CHECK(m_process, sourceFrame);
+ MESSAGE_CHECK(m_process.get(), sourceFrame);
m_formClient->willSubmitForm(*this, *frame, *sourceFrame, textFieldValues, m_process->transformHandlesToObjects(userData.object()).get(), [this, protectedThis = makeRef(*this), frameID, listenerID]() {
m_process->send(Messages::WebPage::ContinueWillSubmitForm(frameID, listenerID), m_pageID);
@@ -4599,32 +4599,32 @@
void WebPageProxy::didNavigateWithNavigationData(const WebNavigationDataStore& store, uint64_t frameID)
{
- didNavigateWithNavigationDataShared(m_process.copyRef(), store, frameID);
+ didNavigateWithNavigationDataShared(m_process, store, frameID);
}
-void WebPageProxy::didNavigateWithNavigationDataShared(Ref<WebProcessProxy>&& process, const WebNavigationDataStore& store, uint64_t frameID)
+void WebPageProxy::didNavigateWithNavigationDataShared(WebProcessProxy& process, const WebNavigationDataStore& store, uint64_t frameID)
{
- RELEASE_LOG_IF_ALLOWED(Loading, "didNavigateWithNavigationDataShared: webPID = %i, pageID = %" PRIu64, process->processIdentifier(), m_pageID);
+ RELEASE_LOG_IF_ALLOWED(Loading, "didNavigateWithNavigationDataShared: webPID = %i, pageID = %" PRIu64, process.processIdentifier(), m_pageID);
PageClientProtector protector(pageClient());
- WebFrameProxy* frame = process->webFrame(frameID);
+ WebFrameProxy* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
MESSAGE_CHECK(process, frame->page() == this);
if (frame->isMainFrame())
m_historyClient->didNavigateWithNavigationData(*this, store);
- process->processPool().historyClient().didNavigateWithNavigationData(process->processPool(), *this, store, *frame);
+ process.processPool().historyClient().didNavigateWithNavigationData(process.processPool(), *this, store, *frame);
}
void WebPageProxy::didPerformClientRedirect(const String& sourceURLString, const String& destinationURLString, uint64_t frameID)
{
- didPerformClientRedirectShared(m_process.copyRef(), sourceURLString, destinationURLString, frameID);
+ didPerformClientRedirectShared(m_process, sourceURLString, destinationURLString, frameID);
}
-void WebPageProxy::didPerformClientRedirectShared(Ref<WebProcessProxy>&& process, const String& sourceURLString, const String& destinationURLString, uint64_t frameID)
+void WebPageProxy::didPerformClientRedirectShared(WebProcessProxy& process, const String& sourceURLString, const String& destinationURLString, uint64_t frameID)
{
- RELEASE_LOG_IF_ALLOWED(Loading, "didPerformClientRedirectShared: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64, process->processIdentifier(), m_pageID, frameID);
+ RELEASE_LOG_IF_ALLOWED(Loading, "didPerformClientRedirectShared: webPID = %i, pageID = %" PRIu64 ", frameID = %" PRIu64, process.processIdentifier(), m_pageID, frameID);
PageClientProtector protector(pageClient());
@@ -4631,7 +4631,7 @@
if (sourceURLString.isEmpty() || destinationURLString.isEmpty())
return;
- WebFrameProxy* frame = process->webFrame(frameID);
+ WebFrameProxy* frame = process.webFrame(frameID);
MESSAGE_CHECK(process, frame);
MESSAGE_CHECK(process, frame->page() == this);
MESSAGE_CHECK_URL(process, sourceURLString);
@@ -4641,7 +4641,7 @@
m_historyClient->didPerformClientRedirect(*this, sourceURLString, destinationURLString);
m_navigationClient->didPerformClientRedirect(*this, sourceURLString, destinationURLString);
}
- process->processPool().historyClient().didPerformClientRedirect(process->processPool(), *this, sourceURLString, destinationURLString, *frame);
+ process.processPool().historyClient().didPerformClientRedirect(process.processPool(), *this, sourceURLString, destinationURLString, *frame);
}
void WebPageProxy::didPerformServerRedirect(const String& sourceURLString, const String& destinationURLString, uint64_t frameID)
@@ -4654,11 +4654,11 @@
return;
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
- MESSAGE_CHECK(m_process, frame->page() == this);
+ MESSAGE_CHECK(m_process.get(), frame);
+ MESSAGE_CHECK(m_process.get(), frame->page() == this);
- MESSAGE_CHECK_URL(m_process, sourceURLString);
- MESSAGE_CHECK_URL(m_process, destinationURLString);
+ MESSAGE_CHECK_URL(process(), sourceURLString);
+ MESSAGE_CHECK_URL(process(), destinationURLString);
if (frame->isMainFrame())
m_historyClient->didPerformServerRedirect(*this, sourceURLString, destinationURLString);
@@ -4670,10 +4670,10 @@
PageClientProtector protector(pageClient());
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
- MESSAGE_CHECK(m_process, frame->page() == this);
+ MESSAGE_CHECK(m_process.get(), frame);
+ MESSAGE_CHECK(m_process.get(), frame->page() == this);
- MESSAGE_CHECK_URL(m_process, url);
+ MESSAGE_CHECK_URL(process(), url);
if (frame->isMainFrame())
m_historyClient->didUpdateHistoryTitle(*this, title, url);
@@ -4684,7 +4684,7 @@
void WebPageProxy::createNewPage(const FrameInfoData& originatingFrameInfoData, uint64_t originatingPageID, ResourceRequest&& request, WindowFeatures&& windowFeatures, NavigationActionData&& navigationActionData, Messages::WebPageProxy::CreateNewPage::DelayedReply&& reply)
{
- MESSAGE_CHECK(m_process, m_process->webFrame(originatingFrameInfoData.frameID));
+ MESSAGE_CHECK(m_process.get(), m_process->webFrame(originatingFrameInfoData.frameID));
auto originatingFrameInfo = API::FrameInfo::create(originatingFrameInfoData, m_process->webPage(originatingPageID));
auto mainFrameURL = m_mainFrame->url();
@@ -4749,7 +4749,7 @@
void WebPageProxy::runJavaScriptAlert(uint64_t frameID, const SecurityOriginData& securityOrigin, const String& message, Messages::WebPageProxy::RunJavaScriptAlert::DelayedReply&& reply)
{
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
#if PLATFORM(IOS_FAMILY)
exitFullscreenImmediately();
@@ -4768,7 +4768,7 @@
void WebPageProxy::runJavaScriptConfirm(uint64_t frameID, const SecurityOriginData& securityOrigin, const String& message, Messages::WebPageProxy::RunJavaScriptConfirm::DelayedReply&& reply)
{
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
#if PLATFORM(IOS_FAMILY)
exitFullscreenImmediately();
@@ -4788,7 +4788,7 @@
void WebPageProxy::runJavaScriptPrompt(uint64_t frameID, const SecurityOriginData& securityOrigin, const String& message, const String& defaultValue, Messages::WebPageProxy::RunJavaScriptPrompt::DelayedReply&& reply)
{
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
#if PLATFORM(IOS_FAMILY)
exitFullscreenImmediately();
@@ -4839,10 +4839,10 @@
#if ENABLE(NETSCAPE_PLUGIN_API)
void WebPageProxy::unavailablePluginButtonClicked(uint32_t opaquePluginUnavailabilityReason, const String& mimeType, const String& pluginURLString, const String& pluginspageAttributeURLString, const String& frameURLString, const String& pageURLString)
{
- MESSAGE_CHECK_URL(m_process, pluginURLString);
- MESSAGE_CHECK_URL(m_process, pluginspageAttributeURLString);
- MESSAGE_CHECK_URL(m_process, frameURLString);
- MESSAGE_CHECK_URL(m_process, pageURLString);
+ MESSAGE_CHECK_URL(process(), pluginURLString);
+ MESSAGE_CHECK_URL(process(), pluginspageAttributeURLString);
+ MESSAGE_CHECK_URL(process(), frameURLString);
+ MESSAGE_CHECK_URL(process(), pageURLString);
String newMimeType = mimeType;
PluginModuleInfo plugin = m_process->processPool().pluginInfoStore().findPlugin(newMimeType, URL(URL(), pluginURLString));
@@ -4968,7 +4968,7 @@
void WebPageProxy::runBeforeUnloadConfirmPanel(uint64_t frameID, const SecurityOriginData& securityOrigin, const String& message, Messages::WebPageProxy::RunBeforeUnloadConfirmPanel::DelayedReply&& reply)
{
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
// Per ยง18 User Prompts in the WebDriver spec, "User prompts that are spawned from beforeunload
// event handlers, are dismissed implicitly upon navigation or close window, regardless of the
@@ -5013,7 +5013,7 @@
}
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
Ref<API::OpenPanelParameters> parameters = API::OpenPanelParameters::create(settings);
m_openPanelResultListener = WebOpenPanelResultListenerProxy::create(this);
@@ -5050,7 +5050,7 @@
m_isPerformingDOMPrintOperation = true;
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
m_uiClient->printFrame(*this, *frame);
@@ -5339,10 +5339,10 @@
void WebPageProxy::backForwardGoToItem(const BackForwardItemIdentifier& itemID, SandboxExtension::Handle& sandboxExtensionHandle)
{
- backForwardGoToItemShared(m_process.copyRef(), itemID, sandboxExtensionHandle);
+ backForwardGoToItemShared(m_process, itemID, sandboxExtensionHandle);
}
-void WebPageProxy::backForwardGoToItemShared(Ref<WebProcessProxy>&& process, const BackForwardItemIdentifier& itemID, SandboxExtension::Handle& sandboxExtensionHandle)
+void WebPageProxy::backForwardGoToItemShared(WebProcessProxy& process, const BackForwardItemIdentifier& itemID, SandboxExtension::Handle& sandboxExtensionHandle)
{
WebBackForwardListItem* item = m_backForwardList->itemForID(itemID);
if (!item)
@@ -5829,7 +5829,7 @@
void WebPageProxy::learnWord(const String& word)
{
- MESSAGE_CHECK(m_process, m_pendingLearnOrIgnoreWordMessageCount);
+ MESSAGE_CHECK(m_process.get(), m_pendingLearnOrIgnoreWordMessageCount);
--m_pendingLearnOrIgnoreWordMessageCount;
TextChecker::learnWord(spellDocumentTag(), word);
@@ -5837,7 +5837,7 @@
void WebPageProxy::ignoreWord(const String& word)
{
- MESSAGE_CHECK(m_process, m_pendingLearnOrIgnoreWordMessageCount);
+ MESSAGE_CHECK(m_process.get(), m_pendingLearnOrIgnoreWordMessageCount);
--m_pendingLearnOrIgnoreWordMessageCount;
TextChecker::ignoreWord(spellDocumentTag(), word);
@@ -5935,9 +5935,9 @@
LOG(MouseHandling, "WebPageProxy::didReceiveEvent: %s (queue size %zu)", webMouseEventTypeString(type), m_mouseEventQueue.size());
// Retire the last sent event now that WebProcess is done handling it.
- MESSAGE_CHECK(m_process, !m_mouseEventQueue.isEmpty());
+ MESSAGE_CHECK(m_process.get(), !m_mouseEventQueue.isEmpty());
NativeWebMouseEvent event = m_mouseEventQueue.takeFirst();
- MESSAGE_CHECK(m_process, type == event.type());
+ MESSAGE_CHECK(m_process.get(), type == event.type());
if (!m_mouseEventQueue.isEmpty()) {
LOG(MouseHandling, " UIProcess: handling a queued mouse event from didReceiveEvent");
@@ -5952,7 +5952,7 @@
}
case WebEvent::Wheel: {
- MESSAGE_CHECK(m_process, !m_currentlyProcessedWheelEvents.isEmpty());
+ MESSAGE_CHECK(m_process.get(), !m_currentlyProcessedWheelEvents.isEmpty());
std::unique_ptr<Vector<NativeWebWheelEvent>> oldestCoalescedEvent = m_currentlyProcessedWheelEvents.takeFirst();
@@ -5973,10 +5973,10 @@
case WebEvent::Char: {
LOG(KeyHandling, "WebPageProxy::didReceiveEvent: %s (queue empty %d)", webKeyboardEventTypeString(type), m_keyEventQueue.isEmpty());
- MESSAGE_CHECK(m_process, !m_keyEventQueue.isEmpty());
+ MESSAGE_CHECK(m_process.get(), !m_keyEventQueue.isEmpty());
NativeWebKeyboardEvent event = m_keyEventQueue.takeFirst();
- MESSAGE_CHECK(m_process, type == event.type());
+ MESSAGE_CHECK(m_process.get(), type == event.type());
bool canProcessMoreKeyEvents = !m_keyEventQueue.isEmpty();
if (canProcessMoreKeyEvents) {
@@ -6003,10 +6003,10 @@
case WebEvent::GestureStart:
case WebEvent::GestureChange:
case WebEvent::GestureEnd: {
- MESSAGE_CHECK(m_process, !m_gestureEventQueue.isEmpty());
+ MESSAGE_CHECK(m_process.get(), !m_gestureEventQueue.isEmpty());
NativeWebGestureEvent event = m_gestureEventQueue.takeFirst();
- MESSAGE_CHECK(m_process, type == event.type());
+ MESSAGE_CHECK(m_process.get(), type == event.type());
if (!handled)
pageClient().gestureEventWasNotHandledByWebCore(event);
@@ -6025,10 +6025,10 @@
case WebEvent::TouchMove:
case WebEvent::TouchEnd:
case WebEvent::TouchCancel: {
- MESSAGE_CHECK(m_process, !m_touchEventQueue.isEmpty());
+ MESSAGE_CHECK(m_process.get(), !m_touchEventQueue.isEmpty());
QueuedTouchEvents queuedEvents = m_touchEventQueue.takeFirst();
- MESSAGE_CHECK(m_process, type == queuedEvents.forwardedEvent.type());
+ MESSAGE_CHECK(m_process.get(), type == queuedEvents.forwardedEvent.type());
pageClient().doneWithTouchEvent(queuedEvents.forwardedEvent, handled);
for (size_t i = 0; i < queuedEvents.deferredTouchEvents.size(); ++i) {
@@ -6156,7 +6156,7 @@
void WebPageProxy::editingRangeCallback(const EditingRange& range, CallbackID callbackID)
{
- MESSAGE_CHECK(m_process, range.isValid());
+ MESSAGE_CHECK(m_process.get(), range.isValid());
auto callback = m_callbacks.take<EditingRangeCallback>(callbackID);
if (!callback) {
@@ -6257,7 +6257,7 @@
void WebPageProxy::rectForCharacterRangeCallback(const IntRect& rect, const EditingRange& actualRange, CallbackID callbackID)
{
- MESSAGE_CHECK(m_process, actualRange.isValid());
+ MESSAGE_CHECK(m_process.get(), actualRange.isValid());
auto callback = m_callbacks.take<RectForCharacterRangeCallback>(callbackID);
if (!callback) {
@@ -6290,7 +6290,7 @@
}
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
m_focusedFrame = frame;
}
@@ -6303,7 +6303,7 @@
}
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
m_frameSetLargestFrame = frame;
}
@@ -6849,7 +6849,7 @@
ExceededDatabaseQuotaRecords::Record* record = records.next();
while (record) {
WebFrameProxy* frame = m_process->webFrame(record->frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
auto origin = API::SecurityOrigin::create(SecurityOriginData::fromDatabaseIdentifier(record->originIdentifier)->securityOrigin());
m_uiClient->exceededDatabaseQuota(this, frame, origin.ptr(), record->databaseName, record->displayName, record->currentQuota, record->currentOriginUsage, record->currentDatabaseUsage, record->expectedUsage, WTFMove(record->reply));
@@ -6866,7 +6866,7 @@
void WebPageProxy::requestGeolocationPermissionForFrame(uint64_t geolocationID, uint64_t frameID, String originIdentifier)
{
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
// FIXME: Geolocation should probably be using toString() as its string representation instead of databaseIdentifier().
auto origin = API::SecurityOrigin::create(SecurityOriginData::fromDatabaseIdentifier(originIdentifier)->securityOrigin());
@@ -6905,7 +6905,7 @@
void WebPageProxy::requestUserMediaPermissionForFrame(uint64_t userMediaID, uint64_t frameID, const WebCore::SecurityOriginData& userMediaDocumentOriginData, const WebCore::SecurityOriginData& topLevelDocumentOriginData, const WebCore::MediaStreamRequest& request)
{
#if ENABLE(MEDIA_STREAM)
- MESSAGE_CHECK(m_process, m_process->webFrame(frameID));
+ MESSAGE_CHECK(m_process.get(), m_process->webFrame(frameID));
userMediaPermissionRequestManager().requestUserMediaPermissionForFrame(userMediaID, frameID, userMediaDocumentOriginData.securityOrigin(), topLevelDocumentOriginData.securityOrigin(), request);
#else
@@ -6921,7 +6921,7 @@
{
#if ENABLE(MEDIA_STREAM)
WebFrameProxy* frame = m_process->webFrame(frameID);
- MESSAGE_CHECK(m_process, frame);
+ MESSAGE_CHECK(m_process.get(), frame);
userMediaPermissionRequestManager().enumerateMediaDevicesForFrame(userMediaID, frameID, userMediaDocumentOriginData.securityOrigin(), topLevelDocumentOriginData.securityOrigin());
#else
@@ -8138,13 +8138,13 @@
void WebPageProxy::startURLSchemeTask(URLSchemeTaskParameters&& parameters)
{
- startURLSchemeTaskShared(m_process.copyRef(), WTFMove(parameters));
+ startURLSchemeTaskShared(m_process, WTFMove(parameters));
}
-void WebPageProxy::startURLSchemeTaskShared(Ref<WebProcessProxy>&& process, URLSchemeTaskParameters&& parameters)
+void WebPageProxy::startURLSchemeTaskShared(WebProcessProxy& process, URLSchemeTaskParameters&& parameters)
{
auto iterator = m_urlSchemeHandlersByIdentifier.find(parameters.handlerIdentifier);
- MESSAGE_CHECK(process, iterator != m_urlSchemeHandlersByIdentifier.end());
+ MESSAGE_CHECK(m_process.get(), iterator != m_urlSchemeHandlersByIdentifier.end());
iterator->value->startTask(*this, process, parameters.taskIdentifier, WTFMove(parameters.request), nullptr);
}
@@ -8152,7 +8152,7 @@
void WebPageProxy::stopURLSchemeTask(uint64_t handlerIdentifier, uint64_t taskIdentifier)
{
auto iterator = m_urlSchemeHandlersByIdentifier.find(handlerIdentifier);
- MESSAGE_CHECK(m_process, iterator != m_urlSchemeHandlersByIdentifier.end());
+ MESSAGE_CHECK(m_process.get(), iterator != m_urlSchemeHandlersByIdentifier.end());
iterator->value->stopTask(*this, taskIdentifier);
}
@@ -8160,7 +8160,7 @@
void WebPageProxy::loadSynchronousURLSchemeTask(URLSchemeTaskParameters&& parameters, Messages::WebPageProxy::LoadSynchronousURLSchemeTask::DelayedReply&& reply)
{
auto iterator = m_urlSchemeHandlersByIdentifier.find(parameters.handlerIdentifier);
- MESSAGE_CHECK(m_process, iterator != m_urlSchemeHandlersByIdentifier.end());
+ MESSAGE_CHECK(m_process.get(), iterator != m_urlSchemeHandlersByIdentifier.end());
iterator->value->startTask(*this, m_process, parameters.taskIdentifier, WTFMove(parameters.request), WTFMove(reply));
}