Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
… into master.lion
  • Loading branch information
bluebox authored and bluebox committed Mar 13, 2021
2 parents 1cc6751 + 8a16c14 commit 1d1dcaa
Show file tree
Hide file tree
Showing 1,354 changed files with 20,760 additions and 17,930 deletions.
1 change: 1 addition & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -677,6 +677,7 @@ Mark Hahnenberg <[email protected]>
Mark Seaborn <[email protected]>
Mark Winter <[email protected]>
Martijn Croonen <[email protected]>
Martin Aberer <[email protected]>
Martin Bednorz <[email protected]>
Martin Persson <[email protected]>
Martin Rogalla <[email protected]>
Expand Down
40 changes: 20 additions & 20 deletions DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling Skia
# and whatever else without interference from each other.
'skia_revision': '91113acfd1d607e4218a13f3c9152f7547cef900',
'skia_revision': '90898de3468d19d78e68db34bdeda384a6f2346a',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling V8
# and whatever else without interference from each other.
Expand All @@ -216,11 +216,11 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling ANGLE
# and whatever else without interference from each other.
'angle_revision': 'b775012c55a3894b35bbcc4f21838752ac6c7764',
'angle_revision': 'ca5dbef04014dede0beb79aa5a9c71a5b8c6286c',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling SwiftShader
# and whatever else without interference from each other.
'swiftshader_revision': '3c4fd15fb075ab3a8eb5809f9a42b5faa9ac63ae',
'swiftshader_revision': '314aa755ed3af01dc42d77587752a32a883972ed',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling PDFium
# and whatever else without interference from each other.
Expand Down Expand Up @@ -275,15 +275,15 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling catapult
# and whatever else without interference from each other.
'catapult_revision': 'cf138ce6bf90f8ad2c79f38f6ed919182c5a3132',
'catapult_revision': '58bac6811f216d26bf22993667a9f661144366fe',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling libFuzzer
# and whatever else without interference from each other.
'libfuzzer_revision': 'debe7d2d1982e540fbd6bd78604bf001753f9e74',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling devtools-frontend
# and whatever else without interference from each other.
'devtools_frontend_revision': '0e1057d6ad9bddfca3bc8053215aa83752f50db7',
'devtools_frontend_revision': 'fb4b5329e328eaa1c112e392da2ab5b138ebf30f',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling libprotobuf-mutator
# and whatever else without interference from each other.
Expand Down Expand Up @@ -323,7 +323,7 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling feed
# and whatever else without interference from each other.
'dawn_revision': 'a57308e60b7879ab89bb59abe90b01b5f21e92b5',
'dawn_revision': 'bdc134044932f54ce1a27d92e4c85763d764421e',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling feed
# and whatever else without interference from each other.
Expand Down Expand Up @@ -363,7 +363,7 @@ vars = {
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling feed
# and whatever else without interference from each other.
'tint_revision': '4c8d7259da8aa608b825c04cf2209ef8260bb6f6',
'tint_revision': 'e2bc7aa747098c0e50e453e04a9215741af420c2',
# Three lines of non-changing comments so that
# the commit queue can handle CLs rolling feed
# and whatever else without interference from each other.
Expand Down Expand Up @@ -542,7 +542,7 @@ deps = {
},

'src/ios/third_party/edo/src': {
'url': Var('chromium_git') + '/external/github.com/google/eDistantObject.git' + '@' + '1c59aa78db883a1d81c0b0defea31f645d075f0f',
'url': Var('chromium_git') + '/external/github.com/google/eDistantObject.git' + '@' + 'b9cfc0cb37060725f3e968c186e14e6172388546',
'condition': 'checkout_ios',
},

Expand Down Expand Up @@ -697,7 +697,7 @@ deps = {
'packages': [
{
'package': 'chromium/third_party/androidx',
'version': '3G1hc4U6Bn_aI9swoyWQ47t525mpY7SKAEUEDh7H198C',
'version': 'EN4DLethclLCP_lCo0oAo1vHM4htuJWWMDdCnSV2SekC',
},
],
'condition': 'checkout_android',
Expand Down Expand Up @@ -910,7 +910,7 @@ deps = {
# Tools used when building Chrome for Chrome OS. This affects both the Simple
# Chrome workflow, as well as the chromeos-chrome ebuild.
'src/third_party/chromite': {
'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '65448dbe5b0d150bb2ad11b15c4330ab1f0b4483',
'url': Var('chromium_git') + '/chromiumos/chromite.git' + '@' + '945280f13620ae915dbfd437ff5d4682771e8b01',
'condition': 'checkout_chromeos',
},

Expand All @@ -930,7 +930,7 @@ deps = {
},

'src/third_party/depot_tools':
Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + 'bd1729d959b350e8417e68afb20a3ae4e60b26cb',
Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + 'bb890d6186dd84e3e68bf53418f0729350e32ee8',

'src/third_party/devtools-frontend/src':
Var('chromium_git') + '/devtools/devtools-frontend' + '@' + Var('devtools_frontend_revision'),
Expand Down Expand Up @@ -1302,7 +1302,7 @@ deps = {
},

'src/third_party/perfetto':
Var('android_git') + '/platform/external/perfetto.git' + '@' + '37a722a2ee717c3eccba43ebaeca833cf7979a73',
Var('android_git') + '/platform/external/perfetto.git' + '@' + 'a69cfa0429c0062bd07195aaad0002df029e088a',

'src/third_party/perl': {
'url': Var('chromium_git') + '/chromium/deps/perl.git' + '@' + '6f3e5028eb65d0b4c5fdd792106ac4c84eee1eb3',
Expand Down Expand Up @@ -1380,7 +1380,7 @@ deps = {
'packages': [
{
'package': 'fuchsia/third_party/aemu/linux-amd64',
'version': 'xkJqHNeFPOJ9cNmeaij9qrxQTAP8oRjXHcuTdg2nny8C'
'version': 'fU_J9KtzLrfiXhqpf_1eV01gy30M641raluN5uaKPNAC'
},
],
'condition': 'host_os == "linux" and checkout_fuchsia',
Expand Down Expand Up @@ -1511,7 +1511,7 @@ deps = {
'src/third_party/usrsctp/usrsctplib':
Var('chromium_git') + '/external/github.com/sctplab/usrsctp' + '@' + '991335be3de503ef02cd9f8415e4242ad3f107f9',

'src/third_party/vulkan-deps': '{chromium_git}/vulkan-deps@ea8c29e1ee20acc3428b9ff4d2524f8dbe3aeced',
'src/third_party/vulkan-deps': '{chromium_git}/vulkan-deps@9120d4ae84c661f5f3ee3a496c476a402169cd07',

'src/third_party/vulkan_memory_allocator':
Var('chromium_git') + '/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git' + '@' + '732a76d9d3c70d6aa487216495eeb28518349c3a',
Expand All @@ -1538,7 +1538,7 @@ deps = {
Var('chromium_git') + '/external/github.com/gpuweb/cts.git' + '@' + '66460536ee975a3e98931b7b40a661a63fd9cd57',

'src/third_party/webrtc':
Var('webrtc_git') + '/src.git' + '@' + '14a626af56675c9d95f9fb207d53366a53a95fbd',
Var('webrtc_git') + '/src.git' + '@' + '86473404362e38131203537b8a8c8ec7c1abc31a',

'src/third_party/libgifcodec':
Var('skia_git') + '/libgifcodec' + '@'+ Var('libgifcodec_revision'),
Expand Down Expand Up @@ -1576,7 +1576,7 @@ deps = {
'packages': [
{
'package': 'skia/tools/goldctl/linux-amd64',
'version': 'B61Q7uQOsOlRtaowXXUUrD_eSjWCpiKEcrtjT3VFg-cC',
'version': 'jstGnw4Pyb9uiuH75QNEy3f6hJN7ET2TFiOVOUiMokcC',
},
],
'dep_type': 'cipd',
Expand All @@ -1596,7 +1596,7 @@ deps = {
'packages': [
{
'package': 'skia/tools/goldctl/mac-amd64',
'version': 'RY1cs6o9Gi3j3iBE9XxPDZcR1n4Xvo27QvF_F3wL2r4C',
'version': 'VUCuq1sveo1hxWfABmHwe-nXmh0OuWy4y9PhS3ykvykC',
},
],
'dep_type': 'cipd',
Expand All @@ -1610,7 +1610,7 @@ deps = {
Var('chromium_git') + '/v8/v8.git' + '@' + Var('v8_revision'),

'src-internal': {
'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@b3efcf5d42c2a08a1ae2c3a4e01c9fe81f4a469e',
'url': 'https://chrome-internal.googlesource.com/chrome/src-internal.git@d20870514252c4d9ce657b06169908f78af2b2f2',
'condition': 'checkout_src_internal',
},

Expand All @@ -1629,7 +1629,7 @@ deps = {
'packages': [
{
'package': 'chromeos_internal/apps/help_app/app',
'version': '5rynsm66HY0mh_2ICrI9dzITCnBCVDHVoePArWGckF8C',
'version': 'gwOBjFUB9GLHiq3RfI0MwMralW85Xeq_nLp1r5IIYZ0C',
},
],
'condition': 'checkout_chromeos and checkout_src_internal',
Expand All @@ -1640,7 +1640,7 @@ deps = {
'packages': [
{
'package': 'chromeos_internal/apps/media_app/app',
'version': 'aBTMY57hhmX1eDoLFEhCdVYfgYx_7DFWsMYtxsQvPz0C',
'version': 'Xe7aWH7QZqzuL5B9pm6jRLu54tlJem-F1ZA3LEy9vQQC',
},
],
'condition': 'checkout_chromeos and checkout_src_internal',
Expand Down
29 changes: 17 additions & 12 deletions android_webview/browser/aw_content_browser_client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -794,6 +794,7 @@ bool AwContentBrowserClient::HandleExternalProtocol(
const GURL& url,
content::WebContents::OnceGetter web_contents_getter,
int child_id,
int frame_tree_node_id,
content::NavigationUIData* navigation_data,
bool is_main_frame,
ui::PageTransition page_transition,
Expand All @@ -807,21 +808,22 @@ bool AwContentBrowserClient::HandleExternalProtocol(
if (content::BrowserThread::CurrentlyOn(content::BrowserThread::IO)) {
// Manages its own lifetime.
new android_webview::AwProxyingURLLoaderFactory(
0 /* process_id */, std::move(receiver), mojo::NullRemote(),
true /* intercept_only */, base::nullopt /* security_options */);
0 /* process_id */, frame_tree_node_id, std::move(receiver),
mojo::NullRemote(), true /* intercept_only */,
base::nullopt /* security_options */);
} else {
content::GetIOThreadTaskRunner({})->PostTask(
FROM_HERE,
base::BindOnce(
[](mojo::PendingReceiver<network::mojom::URLLoaderFactory>
receiver) {
[](mojo::PendingReceiver<network::mojom::URLLoaderFactory> receiver,
int frame_tree_node_id) {
// Manages its own lifetime.
new android_webview::AwProxyingURLLoaderFactory(
0 /* process_id */, std::move(receiver), mojo::NullRemote(),
true /* intercept_only */,
0 /* process_id */, frame_tree_node_id, std::move(receiver),
mojo::NullRemote(), true /* intercept_only */,
base::nullopt /* security_options */);
},
std::move(receiver)));
std::move(receiver), frame_tree_node_id));
}
return false;
}
Expand Down Expand Up @@ -942,20 +944,23 @@ bool AwContentBrowserClient::WillCreateURLLoaderFactory(
preferences.allow_file_access_from_file_urls ||
preferences.allow_universal_access_from_file_urls;
}

content::GetIOThreadTaskRunner({})->PostTask(
FROM_HERE,
base::BindOnce(&AwProxyingURLLoaderFactory::CreateProxy, process_id,
std::move(proxied_receiver),
frame->GetFrameTreeNodeId(), std::move(proxied_receiver),
std::move(target_factory_remote), security_options));
} else {
// A service worker and worker subresources set nullptr to |frame|, and
// work without seeing the AllowUniversalAccessFromFileURLs setting. So,
// we don't pass a valid |security_options| here.
content::GetIOThreadTaskRunner({})->PostTask(
FROM_HERE, base::BindOnce(&AwProxyingURLLoaderFactory::CreateProxy,
process_id, std::move(proxied_receiver),
std::move(target_factory_remote),
base::nullopt /* security_options */));
FROM_HERE,
base::BindOnce(&AwProxyingURLLoaderFactory::CreateProxy, process_id,
content::RenderFrameHost::kNoFrameTreeNodeId,
std::move(proxied_receiver),
std::move(target_factory_remote),
base::nullopt /* security_options */));
}
return true;
}
Expand Down
1 change: 1 addition & 0 deletions android_webview/browser/aw_content_browser_client.h
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,7 @@ class AwContentBrowserClient : public content::ContentBrowserClient {
const GURL& url,
content::WebContents::OnceGetter web_contents_getter,
int child_id,
int frame_tree_node_id,
content::NavigationUIData* navigation_data,
bool is_main_frame,
ui::PageTransition page_transition,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ class InterceptedRequest : public network::mojom::URLLoader,
public:
InterceptedRequest(
int process_id,
int frame_tree_node_id,
uint64_t request_id,
int32_t routing_id,
uint32_t options,
Expand All @@ -72,6 +73,7 @@ class InterceptedRequest : public network::mojom::URLLoader,
void Restart();

// network::mojom::URLLoaderClient
void OnReceiveEarlyHints(network::mojom::EarlyHintsPtr early_hints) override;
void OnReceiveResponse(network::mojom::URLResponseHeadPtr head) override;
void OnReceiveRedirect(const net::RedirectInfo& redirect_info,
network::mojom::URLResponseHeadPtr head) override;
Expand Down Expand Up @@ -130,6 +132,7 @@ class InterceptedRequest : public network::mojom::URLLoader,
void SendErrorCallback(int error_code, bool safebrowsing_hit);

const int process_id_;
const int frame_tree_node_id_;
const uint64_t request_id_;
const int32_t routing_id_;
const uint32_t options_;
Expand Down Expand Up @@ -248,6 +251,7 @@ class ProtocolResponseDelegate

InterceptedRequest::InterceptedRequest(
int process_id,
int frame_tree_node_id,
uint64_t request_id,
int32_t routing_id,
uint32_t options,
Expand All @@ -260,6 +264,7 @@ InterceptedRequest::InterceptedRequest(
base::Optional<AwProxyingURLLoaderFactory::SecurityOptions>
security_options)
: process_id_(process_id),
frame_tree_node_id_(frame_tree_node_id),
request_id_(request_id),
routing_id_(routing_id),
options_(options),
Expand Down Expand Up @@ -492,6 +497,11 @@ void OnNewLoginRequestOnUiThread(int process_id,

// URLLoaderClient methods.

void InterceptedRequest::OnReceiveEarlyHints(
network::mojom::EarlyHintsPtr early_hints) {
target_client_->OnReceiveEarlyHints(std::move(early_hints));
}

void InterceptedRequest::OnReceiveResponse(
network::mojom::URLResponseHeadPtr head) {
// intercept response headers here
Expand Down Expand Up @@ -615,13 +625,8 @@ InterceptedRequest::GetIoThreadClient() {
if (request_.originated_from_service_worker) {
return AwContentsIoThreadClient::GetServiceWorkerIoThreadClient();
}

// |process_id_| == 0 indicates this is a navigation, and so we should use the
// frame_tree_node_id API (with request_.render_frame_id).
return process_id_
? AwContentsIoThreadClient::FromID(process_id_,
request_.render_frame_id)
: AwContentsIoThreadClient::FromID(request_.render_frame_id);
DCHECK_NE(frame_tree_node_id_, content::RenderFrameHost::kNoFrameTreeNodeId);
return AwContentsIoThreadClient::FromID(frame_tree_node_id_);
}

void InterceptedRequest::OnURLLoaderClientError() {
Expand Down Expand Up @@ -720,11 +725,13 @@ void InterceptedRequest::SendErrorCallback(int error_code,

AwProxyingURLLoaderFactory::AwProxyingURLLoaderFactory(
int process_id,
int frame_tree_node_id,
mojo::PendingReceiver<network::mojom::URLLoaderFactory> loader_receiver,
mojo::PendingRemote<network::mojom::URLLoaderFactory> target_factory_remote,
bool intercept_only,
base::Optional<SecurityOptions> security_options)
: process_id_(process_id),
frame_tree_node_id_(frame_tree_node_id),
intercept_only_(intercept_only),
security_options_(security_options) {
DCHECK_CURRENTLY_ON(content::BrowserThread::IO);
Expand All @@ -746,15 +753,16 @@ AwProxyingURLLoaderFactory::~AwProxyingURLLoaderFactory() {}
// static
void AwProxyingURLLoaderFactory::CreateProxy(
int process_id,
int frame_tree_node_id,
mojo::PendingReceiver<network::mojom::URLLoaderFactory> loader_receiver,
mojo::PendingRemote<network::mojom::URLLoaderFactory> target_factory_remote,
base::Optional<SecurityOptions> security_options) {
DCHECK_CURRENTLY_ON(content::BrowserThread::IO);

// will manage its own lifetime
new AwProxyingURLLoaderFactory(process_id, std::move(loader_receiver),
std::move(target_factory_remote), false,
security_options);
new AwProxyingURLLoaderFactory(
process_id, frame_tree_node_id, std::move(loader_receiver),
std::move(target_factory_remote), false, security_options);
}

void AwProxyingURLLoaderFactory::CreateLoaderAndStart(
Expand Down Expand Up @@ -796,9 +804,9 @@ void AwProxyingURLLoaderFactory::CreateLoaderAndStart(
// manages its own lifecycle
// TODO(timvolodine): consider keeping track of requests.
InterceptedRequest* req = new InterceptedRequest(
process_id_, request_id, routing_id, options, request, traffic_annotation,
std::move(loader), std::move(client), std::move(target_factory_clone),
intercept_only_, security_options_);
process_id_, frame_tree_node_id_, request_id, routing_id, options,
request, traffic_annotation, std::move(loader), std::move(client),
std::move(target_factory_clone), intercept_only_, security_options_);
req->Restart();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ class AwProxyingURLLoaderFactory : public network::mojom::URLLoaderFactory {
// target factory.
AwProxyingURLLoaderFactory(
int process_id,
int frame_tree_node_id,
mojo::PendingReceiver<network::mojom::URLLoaderFactory> loader_receiver,
mojo::PendingRemote<network::mojom::URLLoaderFactory>
target_factory_remote,
Expand All @@ -76,6 +77,7 @@ class AwProxyingURLLoaderFactory : public network::mojom::URLLoaderFactory {
// static
static void CreateProxy(
int process_id,
int frame_tree_node_id,
mojo::PendingReceiver<network::mojom::URLLoaderFactory> loader,
mojo::PendingRemote<network::mojom::URLLoaderFactory>
target_factory_remote,
Expand All @@ -99,6 +101,7 @@ class AwProxyingURLLoaderFactory : public network::mojom::URLLoaderFactory {
void OnProxyBindingError();

const int process_id_;
const int frame_tree_node_id_;
mojo::ReceiverSet<network::mojom::URLLoaderFactory> proxy_receivers_;
mojo::Remote<network::mojom::URLLoaderFactory> target_factory_;

Expand Down
Loading

0 comments on commit 1d1dcaa

Please sign in to comment.