Update to Chromium revision 80310.

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@213 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2011-04-05 16:17:33 +00:00
parent 029fbc8865
commit 71a6f6548b
43 changed files with 456 additions and 291 deletions

View File

@@ -4,6 +4,7 @@
// found in the LICENSE file.
#include "browser_request_context.h"
#include "browser_file_system.h"
#include "browser_persistent_cookie_store.h"
#include "browser_resource_loader_bridge.h"
#include "build/build_config.h"
@@ -20,7 +21,10 @@
#include "net/proxy/proxy_config_service.h"
#include "net/proxy/proxy_config_service_fixed.h"
#include "net/proxy/proxy_service.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebKit.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebKitClient.h"
#include "webkit/blob/blob_storage_controller.h"
#include "webkit/fileapi/file_system_context.h"
#include "webkit/glue/webkit_glue.h"
#if defined(OS_WIN)
@@ -74,12 +78,12 @@ void BrowserRequestContext::Init(
persistent_store = new BrowserPersistentCookieStore(cookie_path);
}
cookie_store_ = new net::CookieMonster(persistent_store.get(), NULL);
cookie_policy_ = new net::StaticCookiePolicy();
set_cookie_store(new net::CookieMonster(persistent_store.get(), NULL));
set_cookie_policy(new net::StaticCookiePolicy());
// hard-code A-L and A-C for test shells
accept_language_ = "en-us,en";
accept_charset_ = "iso-8859-1,*,utf-8";
set_accept_language("en-us,en");
set_accept_charset("iso-8859-1,*,utf-8");
#if defined(OS_WIN)
// Using the system proxy resolver on Windows when "Automatically detect
@@ -92,8 +96,8 @@ void BrowserRequestContext::Init(
WINHTTP_CURRENT_USER_IE_PROXY_CONFIG ie_config = {0};
if (WinHttpGetIEProxyConfigForCurrentUser(&ie_config)) {
if (ie_config.fAutoDetect == TRUE) {
proxy_service_ = net::ProxyService::CreateWithoutProxyResolver(
new ProxyConfigServiceNull(), NULL);
set_proxy_service(net::ProxyService::CreateWithoutProxyResolver(
new ProxyConfigServiceNull(), NULL));
}
if (ie_config.lpszAutoConfigUrl)
@@ -105,20 +109,20 @@ void BrowserRequestContext::Init(
}
#endif // defined(OS_WIN)
if (!proxy_service_.get()) {
if (!proxy_service()) {
// Use the system proxy resolver.
scoped_ptr<net::ProxyConfigService> proxy_config_service(
net::ProxyService::CreateSystemProxyConfigService(
MessageLoop::current(), NULL));
proxy_service_ = net::ProxyService::CreateUsingSystemProxyResolver(
proxy_config_service.release(), 0, NULL);
set_proxy_service(net::ProxyService::CreateUsingSystemProxyResolver(
proxy_config_service.release(), 0, NULL));
}
host_resolver_ =
set_host_resolver(
net::CreateSystemHostResolver(net::HostResolver::kDefaultParallelism,
NULL, NULL);
cert_verifier_ = new net::CertVerifier;
ssl_config_service_ = net::SSLConfigService::CreateSystemSSLConfigService();
NULL, NULL));
set_cert_verifier(new net::CertVerifier);
set_ssl_config_service(net::SSLConfigService::CreateSystemSSLConfigService());
// Add support for single sign-on.
url_security_manager_.reset(net::URLSecurityManager::Create(NULL, NULL));
@@ -129,38 +133,40 @@ void BrowserRequestContext::Init(
supported_schemes.push_back("ntlm");
supported_schemes.push_back("negotiate");
http_auth_handler_factory_ =
set_http_auth_handler_factory(
net::HttpAuthHandlerRegistryFactory::Create(supported_schemes,
url_security_manager_.get(),
host_resolver_,
host_resolver(),
std::string(),
false,
false);
false));
net::HttpCache::DefaultBackend* backend = new net::HttpCache::DefaultBackend(
cache_path_valid ? net::DISK_CACHE : net::MEMORY_CACHE,
cache_path, 0, BrowserResourceLoaderBridge::GetCacheThread());
net::HttpCache* cache =
new net::HttpCache(host_resolver_, cert_verifier_, NULL, NULL,
proxy_service_, ssl_config_service_,
http_auth_handler_factory_, NULL, NULL, backend);
new net::HttpCache(host_resolver(), cert_verifier(), NULL, NULL,
proxy_service(), ssl_config_service(),
http_auth_handler_factory(), NULL, NULL, backend);
cache->set_mode(cache_mode);
http_transaction_factory_ = cache;
set_http_transaction_factory(cache);
ftp_transaction_factory_ = new net::FtpNetworkLayer(host_resolver_);
set_ftp_transaction_factory(new net::FtpNetworkLayer(host_resolver()));
blob_storage_controller_.reset(new webkit_blob::BlobStorageController());
file_system_context_ = static_cast<BrowserFileSystem*>(
WebKit::webKitClient()->fileSystem())->file_system_context();
}
BrowserRequestContext::~BrowserRequestContext() {
delete ftp_transaction_factory_;
delete http_transaction_factory_;
delete http_auth_handler_factory_;
delete static_cast<net::StaticCookiePolicy*>(cookie_policy_);
delete cert_verifier_;
delete host_resolver_;
delete ftp_transaction_factory();
delete http_transaction_factory();
delete http_auth_handler_factory();
delete cookie_policy();
delete cert_verifier();
delete host_resolver();
}
void BrowserRequestContext::SetAcceptAllCookies(bool accept_all_cookies) {