chore: bump chromium to bf3f97675b5d9eade34526ebf730c (master) (#27305)

Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
This commit is contained in:
Electron Bot 2021-01-25 08:46:00 -08:00 committed by GitHub
commit ed126eced4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
55 changed files with 245 additions and 230 deletions

View file

@ -146,7 +146,8 @@ gin::WrapperInfo DataPipeHolder::kWrapperInfo = {gin::kEmbedderNativeGin};
DataPipeHolder::DataPipeHolder(const network::DataElement& element)
: id_(base::NumberToString(++g_next_id)) {
data_pipe_.Bind(element.CloneDataPipeGetter());
data_pipe_.Bind(
element.As<network::DataElementDataPipe>().CloneDataPipeGetter());
}
DataPipeHolder::~DataPipeHolder() = default;

View file

@ -492,8 +492,11 @@ gin::Handle<SimpleURLLoaderWrapper> SimpleURLLoaderWrapper::Create(
args->isolate(), body_func,
data_pipe_getter.InitWithNewPipeAndPassReceiver())
.ToV8();
request->request_body = new network::ResourceRequestBody();
request->request_body->SetToChunkedDataPipe(std::move(data_pipe_getter));
request->request_body =
base::MakeRefCounted<network::ResourceRequestBody>();
request->request_body->SetToChunkedDataPipe(
std::move(data_pipe_getter),
network::ResourceRequestBody::ReadOnlyOnce(false));
}
}

View file

@ -243,11 +243,6 @@ BrowserProcessImpl::floc_sorting_lsh_clusters_service() {
return nullptr;
}
optimization_guide::OptimizationGuideService*
BrowserProcessImpl::optimization_guide_service() {
return nullptr;
}
component_updater::ComponentUpdateService*
BrowserProcessImpl::component_updater() {
return nullptr;

View file

@ -81,8 +81,6 @@ class BrowserProcessImpl : public BrowserProcess {
override;
federated_learning::FlocSortingLshClustersService*
floc_sorting_lsh_clusters_service() override;
optimization_guide::OptimizationGuideService* optimization_guide_service()
override;
component_updater::ComponentUpdateService* component_updater() override;
MediaFileSystemRegistry* media_file_system_registry() override;
WebRtcLogUploader* webrtc_log_uploader() override;

View file

@ -232,3 +232,10 @@ GURL ElectronManagementAPIDelegate::GetIconURL(
CHECK(icon_url.is_valid());
return icon_url;
}
GURL ElectronManagementAPIDelegate::GetEffectiveUpdateURL(
const extensions::Extension& extension,
content::BrowserContext* context) const {
// TODO(codebytere): we do not currently support ExtensionManagement.
return GURL::EmptyGURL();
}

View file

@ -81,6 +81,8 @@ class ElectronManagementAPIDelegate : public extensions::ManagementAPIDelegate {
int icon_size,
ExtensionIconSet::MatchType match,
bool grayscale) const override;
GURL GetEffectiveUpdateURL(const extensions::Extension& extension,
content::BrowserContext* context) const override;
};
#endif // SHELL_BROWSER_EXTENSIONS_API_MANAGEMENT_ELECTRON_MANAGEMENT_API_DELEGATE_H_

View file

@ -255,22 +255,28 @@ v8::Local<v8::Value> Converter<network::ResourceRequestBody>::ToV8(
const auto& element = elements[i];
gin::Dictionary upload_data(isolate, v8::Object::New(isolate));
switch (element.type()) {
case network::mojom::DataElementType::kFile:
case network::mojom::DataElement::Tag::kFile: {
const auto& element_file = element.As<network::DataElementFile>();
upload_data.Set("type", "file");
upload_data.Set("file", element.path().value());
upload_data.Set("filePath", base::Value(element.path().AsUTF8Unsafe()));
upload_data.Set("offset", static_cast<int>(element.offset()));
upload_data.Set("length", static_cast<int>(element.length()));
upload_data.Set("file", element_file.path().value());
upload_data.Set("filePath",
base::Value(element_file.path().AsUTF8Unsafe()));
upload_data.Set("offset", static_cast<int>(element_file.offset()));
upload_data.Set("length", static_cast<int>(element_file.length()));
upload_data.Set("modificationTime",
element.expected_modification_time().ToDoubleT());
element_file.expected_modification_time().ToDoubleT());
break;
case network::mojom::DataElementType::kBytes:
}
case network::mojom::DataElement::Tag::kBytes: {
upload_data.Set("type", "rawData");
upload_data.Set("bytes", node::Buffer::Copy(isolate, element.bytes(),
element.length())
.ToLocalChecked());
const auto& bytes = element.As<network::DataElementBytes>().bytes();
const char* data = reinterpret_cast<const char*>(bytes.data());
upload_data.Set(
"bytes",
node::Buffer::Copy(isolate, data, bytes.size()).ToLocalChecked());
break;
case network::mojom::DataElementType::kDataPipe: {
}
case network::mojom::DataElement::Tag::kDataPipe: {
upload_data.Set("type", "blob");
// TODO(zcbenz): After the NetworkService refactor, the old blobUUID API
// becomes unnecessarily complex, we should deprecate the getBlobData

View file

@ -113,6 +113,14 @@ RendererClientBase::RendererClientBase() {
ParseSchemesCLISwitch(command_line, switches::kStreamingSchemes);
for (const std::string& scheme : streaming_schemes_list)
media::AddStreamingScheme(scheme.c_str());
// Parse --secure-schemes=scheme1,scheme2
std::vector<std::string> secure_schemes_list =
ParseSchemesCLISwitch(command_line, switches::kSecureSchemes);
for (const std::string& scheme : secure_schemes_list)
url::AddSecureScheme(scheme.data());
// In Chrome we should set extension's origins to match the pages they can
// work on, but in Electron currently we just let extensions do anything.
url::AddSecureScheme(extensions::kExtensionScheme);
// We rely on the unique process host id which is notified to the
// renderer process via command line switch from the content layer,
// if this switch is removed from the content layer for some reason,
@ -177,7 +185,7 @@ void RendererClientBase::RenderThreadStarted() {
blink::WebCustomElement::AddEmbedderCustomElementName("webview");
blink::WebCustomElement::AddEmbedderCustomElementName("browserplugin");
WTF::String extension_scheme("chrome-extension");
WTF::String extension_scheme(extensions::kExtensionScheme);
// Extension resources are HTTP-like and safe to expose to the fetch API. The
// rules for the fetch API are consistent with XHR.
blink::SchemeRegistry::RegisterURLSchemeAsSupportingFetchAPI(
@ -186,19 +194,9 @@ void RendererClientBase::RenderThreadStarted() {
// Blink's strict first-party origin checks.
blink::SchemeRegistry::RegisterURLSchemeAsFirstPartyWhenTopLevel(
extension_scheme);
// In Chrome we should set extension's origins to match the pages they can
// work on, but in Electron currently we just let extensions do anything.
blink::SchemeRegistry::RegisterURLSchemeAsSecure(extension_scheme);
blink::SchemeRegistry::RegisterURLSchemeAsBypassingContentSecurityPolicy(
extension_scheme);
// Parse --secure-schemes=scheme1,scheme2
std::vector<std::string> secure_schemes_list =
ParseSchemesCLISwitch(command_line, switches::kSecureSchemes);
for (const std::string& scheme : secure_schemes_list)
blink::SchemeRegistry::RegisterURLSchemeAsSecure(
WTF::String::FromUTF8(scheme.data(), scheme.length()));
std::vector<std::string> fetch_enabled_schemes =
ParseSchemesCLISwitch(command_line, switches::kFetchSchemes);
for (const std::string& scheme : fetch_enabled_schemes) {