Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: chrome/browser/devtools/device/android_web_socket.cc

Issue 487013003: Revert "Revert of Replace StreamListenSocket with StreamSocket in HttpServer. (patchset #29 of http… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/message_loop/message_loop.h" 5 #include "base/message_loop/message_loop.h"
6 #include "base/rand_util.h" 6 #include "base/rand_util.h"
7 #include "chrome/browser/devtools/device/android_device_manager.h" 7 #include "chrome/browser/devtools/device/android_device_manager.h"
8 #include "content/public/browser/browser_thread.h" 8 #include "content/public/browser/browser_thread.h"
9 #include "net/base/io_buffer.h" 9 #include "net/base/io_buffer.h"
10 #include "net/base/net_errors.h" 10 #include "net/base/net_errors.h"
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 scoped_refptr<net::IOBuffer> response_buffer, int result) { 137 scoped_refptr<net::IOBuffer> response_buffer, int result) {
138 DCHECK_EQ(device_message_loop_, base::MessageLoopProxy::current()); 138 DCHECK_EQ(device_message_loop_, base::MessageLoopProxy::current());
139 if (!socket_) 139 if (!socket_)
140 return; 140 return;
141 141
142 if (result <= 0) { 142 if (result <= 0) {
143 DisconnectOnHandlerThread(true); 143 DisconnectOnHandlerThread(true);
144 return; 144 return;
145 } 145 }
146 146
147 std::string data = std::string(response_buffer->data(), result); 147 response_buffer_.append(response_buffer->data(), result);
148 response_buffer_ += data;
149 148
150 int bytes_consumed; 149 int bytes_consumed;
151 std::string output; 150 std::string output;
152 WebSocket::ParseResult parse_result = WebSocket::DecodeFrameHybi17( 151 WebSocket::ParseResult parse_result = WebSocket::DecodeFrameHybi17(
153 response_buffer_, false, &bytes_consumed, &output); 152 response_buffer_, false, &bytes_consumed, &output);
154 153
155 while (parse_result == WebSocket::FRAME_OK) { 154 while (parse_result == WebSocket::FRAME_OK) {
156 response_buffer_ = response_buffer_.substr(bytes_consumed); 155 response_buffer_ = response_buffer_.substr(bytes_consumed);
157 BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, 156 BrowserThread::PostTask(BrowserThread::UI, FROM_HERE,
158 base::Bind(&WebSocketImpl::OnFrameRead, this, output)); 157 base::Bind(&WebSocketImpl::OnFrameRead, this, output));
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 222
224 } // namespace 223 } // namespace
225 224
226 scoped_refptr<AndroidDeviceManager::AndroidWebSocket> 225 scoped_refptr<AndroidDeviceManager::AndroidWebSocket>
227 AndroidDeviceManager::Device::CreateWebSocket( 226 AndroidDeviceManager::Device::CreateWebSocket(
228 const std::string& socket, 227 const std::string& socket,
229 const std::string& url, 228 const std::string& url,
230 AndroidDeviceManager::AndroidWebSocket::Delegate* delegate) { 229 AndroidDeviceManager::AndroidWebSocket::Delegate* delegate) {
231 return new WebSocketImpl(device_message_loop_, this, socket, url, delegate); 230 return new WebSocketImpl(device_message_loop_, this, socket, url, delegate);
232 } 231 }
OLDNEW
« no previous file with comments | « chrome/browser/android/dev_tools_server.cc ('k') | chrome/browser/devtools/remote_debugging_server.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698