summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-03-05 07:23:43 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-03-05 07:23:43 +0000
commit4fcbbc7fd228382b4154ad8ad7b973741e68a058 (patch)
treea6478c7a305d36946cfbec255ea7f1d59ef73eee
parent703a31308be801fa9d7206bd0383d04f22eab2a1 (diff)
downloadchromium_src-4fcbbc7fd228382b4154ad8ad7b973741e68a058.zip
chromium_src-4fcbbc7fd228382b4154ad8ad7b973741e68a058.tar.gz
chromium_src-4fcbbc7fd228382b4154ad8ad7b973741e68a058.tar.bz2
Temporarily disable cookie codepaths that use WebKitClient to analyze
performance impact. TBR=dglazkov Review URL: http://codereview.chromium.org/39177 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10974 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--DEPS2
-rw-r--r--chrome/renderer/renderer_glue.cc11
-rw-r--r--webkit/glue/chromium_bridge_impl.cc16
-rw-r--r--webkit/glue/webkit_glue.h12
-rw-r--r--webkit/tools/test_shell/simple_resource_loader_bridge.cc9
5 files changed, 49 insertions, 1 deletions
diff --git a/DEPS b/DEPS
index bc80724..42b5eb8 100644
--- a/DEPS
+++ b/DEPS
@@ -19,7 +19,7 @@ deps = {
"http://googletest.googlecode.com/svn/trunk@167",
"src/third_party/WebKit":
- "/trunk/deps/third_party/WebKit@10947",
+ "/trunk/deps/third_party/WebKit@10973",
"src/third_party/icu38":
"/trunk/deps/third_party/icu38@10692",
diff --git a/chrome/renderer/renderer_glue.cc b/chrome/renderer/renderer_glue.cc
index 9508c50..5f63123 100644
--- a/chrome/renderer/renderer_glue.cc
+++ b/chrome/renderer/renderer_glue.cc
@@ -302,6 +302,17 @@ ResourceLoaderBridge* ResourceLoaderBridge::Create(
mixed_content, 0);
}
+void SetCookie(const GURL& url, const GURL& policy_url,
+ const std::string& cookie) {
+ RenderThread::current()->Send(new ViewHostMsg_SetCookie(url, policy_url, cookie));
+}
+
+std::string GetCookies(const GURL& url, const GURL& policy_url) {
+ std::string cookies;
+ RenderThread::current()->Send(new ViewHostMsg_GetCookies(url, policy_url, &cookies));
+ return cookies;
+}
+
void NotifyCacheStats() {
// Update the browser about our cache
// NOTE: Since this can be called from the plugin process, we might not have
diff --git a/webkit/glue/chromium_bridge_impl.cc b/webkit/glue/chromium_bridge_impl.cc
index f832150..4675e79 100644
--- a/webkit/glue/chromium_bridge_impl.cc
+++ b/webkit/glue/chromium_bridge_impl.cc
@@ -97,6 +97,22 @@ ChromeClientImpl* ToChromeClient(WebCore::Widget* widget) {
namespace WebCore {
+// Cookies --------------------------------------------------------------------
+
+void ChromiumBridge::setCookies(
+ const KURL& url, const KURL& policy_url, const String& cookie) {
+ webkit_glue::SetCookie(
+ webkit_glue::KURLToGURL(url),
+ webkit_glue::KURLToGURL(policy_url),
+ webkit_glue::StringToStdString(cookie));
+}
+
+String ChromiumBridge::cookies(const KURL& url, const KURL& policy_url) {
+ return webkit_glue::StdStringToString(webkit_glue::GetCookies(
+ webkit_glue::KURLToGURL(url),
+ webkit_glue::KURLToGURL(policy_url)));
+}
+
// Font -----------------------------------------------------------------------
#if defined(OS_WIN)
diff --git a/webkit/glue/webkit_glue.h b/webkit/glue/webkit_glue.h
index 003b0da..07aba30 100644
--- a/webkit/glue/webkit_glue.h
+++ b/webkit/glue/webkit_glue.h
@@ -150,6 +150,18 @@ void PrecacheUrl(const char16* url, int url_length);
// This function is called to add a line to the application's log file.
void AppendToLog(const char* filename, int line, const char* message);
+// Sets a cookie string for the given URL. The policy_url argument indicates
+// the URL of the topmost frame, which may be useful for determining whether or
+// not to allow this cookie setting. NOTE: the cookie string is a standard
+// cookie string of the form "name=value; option1=x; option2=y"
+void SetCookie(const GURL& url, const GURL& policy_url,
+ const std::string& cookie);
+
+// Returns all cookies in the form "a=1; b=2; c=3" for the given URL. NOTE:
+// this string should not include any options that may have been specified when
+// the cookie was set. Semicolons delimit individual cookies in this context.
+std::string GetCookies(const GURL& url, const GURL& policy_url);
+
// Gather usage statistics from the in-memory cache and inform our host, if
// applicable.
void NotifyCacheStats();
diff --git a/webkit/tools/test_shell/simple_resource_loader_bridge.cc b/webkit/tools/test_shell/simple_resource_loader_bridge.cc
index 478313e..79ffee0 100644
--- a/webkit/tools/test_shell/simple_resource_loader_bridge.cc
+++ b/webkit/tools/test_shell/simple_resource_loader_bridge.cc
@@ -516,6 +516,15 @@ bool FindProxyForUrl(const GURL& url, std::string* proxy_list) {
return rv == net::OK;
}
+void SetCookie(const GURL& url, const GURL& policy_url,
+ const std::string& cookie) {
+ SimpleResourceLoaderBridge::SetCookie(url, policy_url, cookie);
+}
+
+std::string GetCookies(const GURL& url, const GURL& policy_url) {
+ return SimpleResourceLoaderBridge::GetCookies(url, policy_url);
+}
+
} // namespace webkit_glue
//-----------------------------------------------------------------------------