[webkit-changes] [WebKit/WebKit] 78e6b5: Twitter is not filtered by content filter
Per Arne Vollan
noreply at github.com
Mon Feb 27 11:09:09 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 78e6b51bca3333ed35eb4c3448440f52c565be38
https://github.com/WebKit/WebKit/commit/78e6b51bca3333ed35eb4c3448440f52c565be38
Author: Per Arne Vollan <pvollan at apple.com>
Date: 2023-02-27 (Mon, 27 Feb 2023)
Changed paths:
M LayoutTests/TestExpectations
A LayoutTests/http/wpt/service-workers/basic-fetch-with-contentfilter.https-expected.txt
A LayoutTests/http/wpt/service-workers/basic-fetch-with-contentfilter.https.html
A LayoutTests/http/wpt/service-workers/basic-fetch-with-contentfilter.js
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/mac/TestExpectations
M Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp
M Source/WebKit/NetworkProcess/NetworkResourceLoader.h
M Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp
M Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h
Log Message:
-----------
Twitter is not filtered by content filter
https://bugs.webkit.org/show_bug.cgi?id=252496
rdar://103032824
Reviewed by Sihui Liu.
Twitter is not filtered by content filter since service worker fetch is missing filtering code.
Make sure content filtering is started on service worker fetch, and let the content filter
intercept the fetch if it should be blocked. The didReceiveData method in ServiceWorkerFetchTask
has been split into two methods, since it was being called both when receiving data over IPC and
from the network. The unsafeBuffer method in IPC::SharedBufferReference is only allowed to be
called on the receiver side. The call to startContentFiltering was moved to a location where it
will also be called on service worker fetch, which required a little refactoring.
* LayoutTests/TestExpectations:
* LayoutTests/http/wpt/service-workers/basic-fetch-with-contentfilter.https-expected.txt: Added.
* LayoutTests/http/wpt/service-workers/basic-fetch-with-contentfilter.https.html: Added.
* LayoutTests/http/wpt/service-workers/basic-fetch-with-contentfilter.js: Added.
(doTest):
* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac/TestExpectations:
* Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::start):
(WebKit::NetworkResourceLoader::startRequest):
(WebKit::NetworkResourceLoader::startWithServiceWorker):
(WebKit::NetworkResourceLoader::requestIsForServiceWorkerOnly):
(WebKit::NetworkResourceLoader::serviceWorkerDidNotHandle):
(WebKit::NetworkResourceLoader::continueAfterServiceWorkerReceivedData):
(WebKit::NetworkResourceLoader::continueAfterServiceWorkerReceivedResponse):
(WebKit::NetworkResourceLoader::serviceWorkerDidFinish):
* Source/WebKit/NetworkProcess/NetworkResourceLoader.h:
* Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
(WebKit::ServiceWorkerFetchTask::processResponse):
(WebKit::ServiceWorkerFetchTask::didReceiveData):
(WebKit::ServiceWorkerFetchTask::didReceiveDataFromPreloader):
(WebKit::ServiceWorkerFetchTask::didFinish):
(WebKit::ServiceWorkerFetchTask::loadBodyFromPreloader):
* Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
Canonical link: https://commits.webkit.org/260891@main
More information about the webkit-changes
mailing list