diff options
author | ukai@chromium.org <ukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-03 06:44:57 +0000 |
---|---|---|
committer | ukai@chromium.org <ukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-03 06:44:57 +0000 |
commit | cd188b9b1950e6dd8bd78828998303efb08b835d (patch) | |
tree | 5fd591816f1bab564e40cf9911a489869d9fb476 /net/socket_stream/socket_stream.h | |
parent | c8e62f338255301421ee4b20624d83c777c56a9a (diff) | |
download | chromium_src-cd188b9b1950e6dd8bd78828998303efb08b835d.zip chromium_src-cd188b9b1950e6dd8bd78828998303efb08b835d.tar.gz chromium_src-cd188b9b1950e6dd8bd78828998303efb08b835d.tar.bz2 |
Revert 54707 - Fix WebSocket crash bug.
If SocketStream closes while waiting ResolveProxy, it badly
calls DoResolveProxyComplete from DoLoop invoked by SocketStream::Close,
and real callback of ResolveProxy failed to call SocketStream::OnIOCompleted.
So, don't run DoLoop when closed, if SocketStream is calling APIs of
proxy_service or resolver. Check closing_ after the API calls back
and closes the SocketStream.
BUG=50394,46750
TEST=websocket/tests doesn't crash
Review URL: http://codereview.chromium.org/3054039
TBR=ukai@chromium.org
Review URL: http://codereview.chromium.org/3017053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54709 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/socket_stream/socket_stream.h')
-rw-r--r-- | net/socket_stream/socket_stream.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/net/socket_stream/socket_stream.h b/net/socket_stream/socket_stream.h index ed268c2..860f785 100644 --- a/net/socket_stream/socket_stream.h +++ b/net/socket_stream/socket_stream.h @@ -220,8 +220,6 @@ class SocketStream : public base::RefCountedThreadSafe<SocketStream> { // Used for WebSocketThrottleTest. void CopyAddrInfo(struct addrinfo* head); - void DoClose(); - // Finishes the job. // Calls OnError and OnClose of delegate, and no more // notifications will be sent to delegate. |