summaryrefslogtreecommitdiffstats
path: root/net/socket/client_socket_pool_base.h
diff options
context:
space:
mode:
authorkristianm@google.com <kristianm@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-30 13:00:20 +0000
committerkristianm@google.com <kristianm@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-30 13:00:20 +0000
commit5acdce175d32ba915ac5933ae197e4fc59f7ec8f (patch)
tree453c421316ffeb17ed92295ca4e16c0df9b62123 /net/socket/client_socket_pool_base.h
parent37961b1922d7abcdad8849e4cbab9b7fda8066d0 (diff)
downloadchromium_src-5acdce175d32ba915ac5933ae197e4fc59f7ec8f.zip
chromium_src-5acdce175d32ba915ac5933ae197e4fc59f7ec8f.tar.gz
chromium_src-5acdce175d32ba915ac5933ae197e4fc59f7ec8f.tar.bz2
Add ignore limits flag and use for sync request
Letting sync request ignore the socket and group limits when loading to prevent the WebCore thread from locking up. BUG=45986,58703 TEST=No new tests Review URL: http://codereview.chromium.org/6756004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79817 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket/client_socket_pool_base.h')
-rw-r--r--net/socket/client_socket_pool_base.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/net/socket/client_socket_pool_base.h b/net/socket/client_socket_pool_base.h
index 2382a3f..fba365820 100644
--- a/net/socket/client_socket_pool_base.h
+++ b/net/socket/client_socket_pool_base.h
@@ -171,6 +171,7 @@ class ClientSocketPoolBaseHelper
Request(ClientSocketHandle* handle,
CompletionCallback* callback,
RequestPriority priority,
+ bool ignore_limits,
Flags flags,
const BoundNetLog& net_log);
@@ -179,6 +180,7 @@ class ClientSocketPoolBaseHelper
ClientSocketHandle* handle() const { return handle_; }
CompletionCallback* callback() const { return callback_; }
RequestPriority priority() const { return priority_; }
+ bool ignore_limits() const { return ignore_limits_; }
Flags flags() const { return flags_; }
const BoundNetLog& net_log() const { return net_log_; }
@@ -186,6 +188,7 @@ class ClientSocketPoolBaseHelper
ClientSocketHandle* const handle_;
CompletionCallback* const callback_;
const RequestPriority priority_;
+ bool ignore_limits_;
const Flags flags_;
BoundNetLog net_log_;
@@ -563,10 +566,11 @@ class ClientSocketPoolBase {
CompletionCallback* callback,
RequestPriority priority,
internal::ClientSocketPoolBaseHelper::Flags flags,
+ bool ignore_limits,
const scoped_refptr<SocketParams>& params,
const BoundNetLog& net_log)
: internal::ClientSocketPoolBaseHelper::Request(
- handle, callback, priority, flags, net_log),
+ handle, callback, priority, ignore_limits, flags, net_log),
params_(params) {}
const scoped_refptr<SocketParams>& params() const { return params_; }
@@ -624,6 +628,7 @@ class ClientSocketPoolBase {
Request* request =
new Request(handle, callback, priority,
internal::ClientSocketPoolBaseHelper::NORMAL,
+ params->ignore_limits(),
params, net_log);
return helper_.RequestSocket(group_name, request);
}
@@ -639,6 +644,7 @@ class ClientSocketPoolBase {
NULL /* no callback */,
LOWEST,
internal::ClientSocketPoolBaseHelper::NO_IDLE_SOCKETS,
+ params->ignore_limits(),
params,
net_log);
helper_.RequestSockets(group_name, request, num_sockets);