diff options
Diffstat (limited to 'net/websockets/websocket_job.cc')
-rw-r--r-- | net/websockets/websocket_job.cc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/net/websockets/websocket_job.cc b/net/websockets/websocket_job.cc index 3aeb8aa..53e0eda 100644 --- a/net/websockets/websocket_job.cc +++ b/net/websockets/websocket_job.cc @@ -9,10 +9,10 @@ #include "base/bind.h" #include "base/lazy_instance.h" #include "googleurl/src/gurl.h" +#include "net/base/io_buffer.h" #include "net/base/net_errors.h" #include "net/base/net_log.h" #include "net/cookies/cookie_store.h" -#include "net/base/io_buffer.h" #include "net/http/http_network_session.h" #include "net/http/http_transaction_factory.h" #include "net/http/http_util.h" @@ -330,14 +330,19 @@ void WebSocketJob::OnSentSpdyData(size_t bytes_sent) { OnSentData(socket_, static_cast<int>(bytes_sent)); } -void WebSocketJob::OnReceivedSpdyData(const char* data, int length) { +void WebSocketJob::OnReceivedSpdyData(scoped_ptr<SpdyBuffer> buffer) { DCHECK_NE(INITIALIZED, state_); DCHECK_NE(CONNECTING, state_); if (state_ == CLOSED) return; if (!spdy_websocket_stream_.get()) return; - OnReceivedData(socket_, data, length); + if (buffer) { + OnReceivedData(socket_, buffer->GetRemainingData(), + buffer->GetRemainingSize()); + } else { + OnReceivedData(socket_, NULL, 0); + } } void WebSocketJob::OnCloseSpdyStream() { |