| Index: webkit/tools/test_shell/simple_socket_stream_bridge.cc
|
| diff --git a/webkit/tools/test_shell/simple_socket_stream_bridge.cc b/webkit/tools/test_shell/simple_socket_stream_bridge.cc
|
| index 4fc4cdb0468fc6c2eedd6aaec8da47251f053c79..6a1b1c266d51917c3521f1faad74ceccb67f301a 100644
|
| --- a/webkit/tools/test_shell/simple_socket_stream_bridge.cc
|
| +++ b/webkit/tools/test_shell/simple_socket_stream_bridge.cc
|
| @@ -46,6 +46,7 @@ class WebSocketStreamHandleBridgeImpl
|
| virtual void OnReceivedData(net::SocketStream* req,
|
| const char* data, int len);
|
| virtual void OnClose(net::SocketStream* req);
|
| + virtual void OnError(const net::SocketStream* req, int error);
|
|
|
| private:
|
| virtual ~WebSocketStreamHandleBridgeImpl();
|
| @@ -60,6 +61,7 @@ class WebSocketStreamHandleBridgeImpl
|
| void DoOnSentData(int amount_sent);
|
| void DoOnReceivedData(std::vector<char>* data);
|
| void DoOnClose();
|
| + void DoOnError(int error);
|
|
|
| int socket_id_;
|
| MessageLoop* message_loop_;
|
| @@ -154,6 +156,15 @@ void WebSocketStreamHandleBridgeImpl::OnClose(net::SocketStream* socket) {
|
| NewRunnableMethod(this, &WebSocketStreamHandleBridgeImpl::DoOnClose));
|
| }
|
|
|
| +void WebSocketStreamHandleBridgeImpl::OnError(const net::SocketStream* socket,
|
| + int error) {
|
| + ++num_pending_tasks_;
|
| + message_loop_->PostTask(
|
| + FROM_HERE,
|
| + NewRunnableMethod(this, &WebSocketStreamHandleBridgeImpl::DoOnError,
|
| + error));
|
| +}
|
| +
|
| void WebSocketStreamHandleBridgeImpl::DoConnect(const GURL& url) {
|
| DCHECK(MessageLoop::current() == g_io_thread);
|
| socket_ = net::SocketStreamJob::CreateSocketStreamJob(url, this);
|
| @@ -215,6 +226,13 @@ void WebSocketStreamHandleBridgeImpl::DoOnClose() {
|
| Release();
|
| }
|
|
|
| +void WebSocketStreamHandleBridgeImpl::DoOnError(int error) {
|
| + DCHECK(MessageLoop::current() == message_loop_);
|
| + --num_pending_tasks_;
|
| + if (delegate_)
|
| + delegate_->DidFail(handle_, error);
|
| +}
|
| +
|
| } // namespace
|
|
|
| /* static */
|
|
|