diff --git content/browser/storage_partition_impl.cc content/browser/storage_partition_impl.cc index 9b5a44b6dd99..e90a651f6fba 100644 --- content/browser/storage_partition_impl.cc +++ content/browser/storage_partition_impl.cc @@ -487,10 +487,6 @@ class LoginHandlerDelegate { } WebContents* web_contents = web_contents_getter_.Run(); - if (!web_contents) { - OnAuthCredentials(base::nullopt); - return; - } // WeakPtr is not strictly necessary here due to OnRequestCancelled. creating_login_delegate_ = true; @@ -547,12 +543,6 @@ void OnAuthRequiredContinuation( web_contents_getter = base::BindRepeating(GetWebContents, process_id, routing_id); } - if (!web_contents_getter.Run()) { - mojo::Remote - auth_challenge_responder_remote(std::move(auth_challenge_responder)); - auth_challenge_responder_remote->OnAuthCredentials(base::nullopt); - return; - } new LoginHandlerDelegate(std::move(auth_challenge_responder), std::move(web_contents_getter), auth_info, is_request_for_main_frame, process_id, routing_id, @@ -2421,8 +2411,12 @@ void StoragePartitionImpl::GetQuotaSettings( return; } + // CEF always returns false for IsOffTheRecord(), so also check the path. + const bool is_incognito = browser_context_->IsOffTheRecord() || + browser_context_->GetPath().empty(); + storage::GetNominalDynamicSettings( - GetPath(), browser_context_->IsOffTheRecord(), + GetPath(), is_incognito, storage::GetDefaultDeviceInfoHelper(), std::move(callback)); } @@ -2434,6 +2428,11 @@ void StoragePartitionImpl::InitNetworkContext() { GetContentClient()->browser()->ConfigureNetworkContextParams( browser_context_, is_in_memory_, relative_partition_path_, context_params.get(), cert_verifier_creation_params.get()); + if (context_params->context_name && + *context_params->context_name == "magic_shutting_down") { + // Don't re-initialize the network context during shutdown. + return; + } devtools_instrumentation::ApplyNetworkContextParamsOverrides( browser_context_, context_params.get()); DCHECK(!context_params->cert_verifier_params)