diff options
Diffstat (limited to 'net/spdy')
-rw-r--r-- | net/spdy/spdy_http_stream.cc | 4 | ||||
-rw-r--r-- | net/spdy/spdy_network_transaction_unittest.cc | 8 | ||||
-rw-r--r-- | net/spdy/spdy_proxy_client_socket.cc | 9 | ||||
-rw-r--r-- | net/spdy/spdy_session.cc | 70 | ||||
-rw-r--r-- | net/spdy/spdy_session_pool.cc | 28 | ||||
-rw-r--r-- | net/spdy/spdy_stream.cc | 37 |
6 files changed, 88 insertions, 68 deletions
diff --git a/net/spdy/spdy_http_stream.cc b/net/spdy/spdy_http_stream.cc index 737eba5..89002cb 100644 --- a/net/spdy/spdy_http_stream.cc +++ b/net/spdy/spdy_http_stream.cc @@ -113,7 +113,7 @@ int SpdyHttpStream::ReadResponseBody( memcpy(new_buffer->data(), &(data->data()[bytes_to_copy]), bytes_remaining); response_body_.pop_front(); - response_body_.push_front(new_buffer); + response_body_.push_front(make_scoped_refptr(new_buffer)); } bytes_read += bytes_to_copy; } @@ -273,7 +273,7 @@ void SpdyHttpStream::OnDataReceived(const char* data, int length) { // Save the received data. IOBufferWithSize* io_buffer = new IOBufferWithSize(length); memcpy(io_buffer->data(), data, length); - response_body_.push_back(io_buffer); + response_body_.push_back(make_scoped_refptr(io_buffer)); if (user_buffer_) { // Handing small chunks of data to the caller creates measurable overhead. diff --git a/net/spdy/spdy_network_transaction_unittest.cc b/net/spdy/spdy_network_transaction_unittest.cc index 8b2dc92..d72a2a7 100644 --- a/net/spdy/spdy_network_transaction_unittest.cc +++ b/net/spdy/spdy_network_transaction_unittest.cc @@ -4151,8 +4151,8 @@ TEST_P(SpdyNetworkTransactionTest, ProxyConnect) { BoundNetLog(), GetParam()); helper.session_deps().reset(new SpdySessionDependencies( ProxyService::CreateFixedFromPacResult("PROXY myproxy:70"))); - helper.SetSession(SpdySessionDependencies::SpdyCreateSession( - helper.session_deps().get())); + helper.SetSession(make_scoped_refptr( + SpdySessionDependencies::SpdyCreateSession(helper.session_deps().get()))); helper.RunPreTestSetup(); HttpNetworkTransaction* trans = helper.trans(); @@ -4254,8 +4254,8 @@ TEST_P(SpdyNetworkTransactionTest, DirectConnectProxyReconnect) { // that the session pool key used does is just "DIRECT". helper.session_deps().reset(new SpdySessionDependencies( ProxyService::CreateFixedFromPacResult("DIRECT; PROXY myproxy:70"))); - helper.SetSession(SpdySessionDependencies::SpdyCreateSession( - helper.session_deps().get())); + helper.SetSession(make_scoped_refptr( + SpdySessionDependencies::SpdyCreateSession(helper.session_deps().get()))); SpdySessionPool* spdy_session_pool = helper.session()->spdy_session_pool(); helper.RunPreTestSetup(); diff --git a/net/spdy/spdy_proxy_client_socket.cc b/net/spdy/spdy_proxy_client_socket.cc index 69e93a6..8066007 100644 --- a/net/spdy/spdy_proxy_client_socket.cc +++ b/net/spdy/spdy_proxy_client_socket.cc @@ -310,8 +310,8 @@ int SpdyProxyClientSocket::DoSendRequest() { if (net_log_.IsLoggingAllEvents()) { net_log_.AddEvent( NetLog::TYPE_HTTP_TRANSACTION_SEND_TUNNEL_HEADERS, - new NetLogHttpRequestParameter( - request_line, request_headers)); + make_scoped_refptr(new NetLogHttpRequestParameter( + request_line, request_headers))); } request_.extra_headers.MergeFrom(request_headers); @@ -350,7 +350,7 @@ int SpdyProxyClientSocket::DoReadReplyComplete(int result) { if (net_log_.IsLoggingAllEvents()) { net_log_.AddEvent( NetLog::TYPE_HTTP_TRANSACTION_READ_TUNNEL_RESPONSE_HEADERS, - new NetLogHttpResponseParameter(response_.headers)); + make_scoped_refptr(new NetLogHttpResponseParameter(response_.headers))); } if (response_.headers->response_code() == 200) @@ -406,7 +406,8 @@ void SpdyProxyClientSocket::OnDataReceived(const char* data, int length) { // Save the received data. scoped_refptr<IOBuffer> io_buffer(new IOBuffer(length)); memcpy(io_buffer->data(), data, length); - read_buffer_.push_back(new DrainableIOBuffer(io_buffer, length)); + read_buffer_.push_back( + make_scoped_refptr(new DrainableIOBuffer(io_buffer, length))); } if (read_callback_) { diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc index 3af9079..7035bb8 100644 --- a/net/spdy/spdy_session.cc +++ b/net/spdy/spdy_session.cc @@ -255,7 +255,8 @@ SpdySession::SpdySession(const HostPortProxyPair& host_port_proxy_pair, DCHECK(HttpStreamFactory::spdy_enabled()); net_log_.BeginEvent( NetLog::TYPE_SPDY_SESSION, - new NetLogSpdySessionParameter(host_port_proxy_pair_)); + make_scoped_refptr( + new NetLogSpdySessionParameter(host_port_proxy_pair_))); // TODO(mbelshe): consider randomization of the stream_hi_water_mark. @@ -463,7 +464,8 @@ int SpdySession::WriteSynStream( if (net_log().IsLoggingAllEvents()) { net_log().AddEvent( NetLog::TYPE_SPDY_SESSION_SYN_STREAM, - new NetLogSpdySynParameter(headers, flags, stream_id)); + make_scoped_refptr( + new NetLogSpdySynParameter(headers, flags, stream_id))); } return ERR_IO_PENDING; @@ -494,8 +496,10 @@ int SpdySession::WriteStreamData(spdy::SpdyStreamId stream_id, // as stalled - because only the session knows for sure when the // stall occurs. stream->set_stalled_by_flow_control(true); - net_log().AddEvent(NetLog::TYPE_SPDY_SESSION_STALLED_ON_SEND_WINDOW, - new NetLogIntegerParameter("stream_id", stream_id)); + net_log().AddEvent( + NetLog::TYPE_SPDY_SESSION_STALLED_ON_SEND_WINDOW, + make_scoped_refptr( + new NetLogIntegerParameter("stream_id", stream_id))); return ERR_IO_PENDING; } int new_len = std::min(len, stream->send_window_size()); @@ -506,9 +510,11 @@ int SpdySession::WriteStreamData(spdy::SpdyStreamId stream_id, stream->DecreaseSendWindowSize(len); } - if (net_log().IsLoggingAllEvents()) - net_log().AddEvent(NetLog::TYPE_SPDY_SESSION_SEND_DATA, - new NetLogSpdyDataParameter(stream_id, len, flags)); + if (net_log().IsLoggingAllEvents()) { + net_log().AddEvent( + NetLog::TYPE_SPDY_SESSION_SEND_DATA, + make_scoped_refptr(new NetLogSpdyDataParameter(stream_id, len, flags))); + } // TODO(mbelshe): reduce memory copies here. scoped_ptr<spdy::SpdyDataFrame> frame( @@ -529,7 +535,7 @@ void SpdySession::ResetStream( net_log().AddEvent( NetLog::TYPE_SPDY_SESSION_SEND_RST_STREAM, - new NetLogSpdyRstParameter(stream_id, status)); + make_scoped_refptr(new NetLogSpdyRstParameter(stream_id, status))); scoped_ptr<spdy::SpdyRstStreamControlFrame> rst_frame( spdy_framer_.CreateRstStream(stream_id, status)); @@ -829,8 +835,9 @@ void SpdySession::CloseSessionOnError(net::Error err, bool remove_from_pool) { scoped_refptr<SpdySession> self(this); DCHECK_LT(err, OK); - net_log_.AddEvent(NetLog::TYPE_SPDY_SESSION_CLOSE, - new NetLogIntegerParameter("status", err)); + net_log_.AddEvent( + NetLog::TYPE_SPDY_SESSION_CLOSE, + make_scoped_refptr(new NetLogIntegerParameter("status", err))); // Don't close twice. This can occur because we can have both // a read and a write outstanding, and each can complete with @@ -912,7 +919,7 @@ void SpdySession::DeleteStream(spdy::SpdyStreamId id, int status) { void SpdySession::RemoveFromPool() { if (spdy_session_pool_) { - spdy_session_pool_->Remove(this); + spdy_session_pool_->Remove(make_scoped_refptr(this)); spdy_session_pool_ = NULL; } } @@ -963,9 +970,12 @@ void SpdySession::OnError(spdy::SpdyFramer* framer) { void SpdySession::OnStreamFrameData(spdy::SpdyStreamId stream_id, const char* data, size_t len) { - if (net_log().IsLoggingAllEvents()) - net_log().AddEvent(NetLog::TYPE_SPDY_SESSION_RECV_DATA, - new NetLogSpdyDataParameter(stream_id, len, spdy::SpdyDataFlags())); + if (net_log().IsLoggingAllEvents()) { + net_log().AddEvent( + NetLog::TYPE_SPDY_SESSION_RECV_DATA, + make_scoped_refptr(new NetLogSpdyDataParameter( + stream_id, len, spdy::SpdyDataFlags()))); + } if (!IsStreamActive(stream_id)) { // NOTE: it may just be that the stream was cancelled. @@ -999,9 +1009,9 @@ void SpdySession::OnSyn(const spdy::SpdySynStreamControlFrame& frame, if (net_log_.IsLoggingAllEvents()) { net_log_.AddEvent( NetLog::TYPE_SPDY_SESSION_PUSHED_SYN_STREAM, - new NetLogSpdySynParameter( + make_scoped_refptr(new NetLogSpdySynParameter( headers, static_cast<spdy::SpdyControlFlags>(frame.flags()), - stream_id)); + stream_id))); } // Server-initiated streams should have even sequence numbers. @@ -1097,9 +1107,9 @@ void SpdySession::OnSynReply(const spdy::SpdySynReplyControlFrame& frame, if (net_log().IsLoggingAllEvents()) { net_log().AddEvent( NetLog::TYPE_SPDY_SESSION_SYN_REPLY, - new NetLogSpdySynParameter( + make_scoped_refptr(new NetLogSpdySynParameter( headers, static_cast<spdy::SpdyControlFlags>(frame.flags()), - stream_id)); + stream_id))); } Respond(*headers, stream); @@ -1160,7 +1170,8 @@ void SpdySession::OnRst(const spdy::SpdyRstStreamControlFrame& frame) { net_log().AddEvent( NetLog::TYPE_SPDY_SESSION_RST_STREAM, - new NetLogSpdyRstParameter(stream_id, frame.status())); + make_scoped_refptr( + new NetLogSpdyRstParameter(stream_id, frame.status()))); bool valid_stream = IsStreamActive(stream_id); if (!valid_stream) { @@ -1185,9 +1196,10 @@ void SpdySession::OnRst(const spdy::SpdyRstStreamControlFrame& frame) { void SpdySession::OnGoAway(const spdy::SpdyGoAwayControlFrame& frame) { net_log_.AddEvent( NetLog::TYPE_SPDY_SESSION_GOAWAY, - new NetLogSpdyGoAwayParameter(frame.last_accepted_stream_id(), - active_streams_.size(), - unclaimed_pushed_streams_.size())); + make_scoped_refptr( + new NetLogSpdyGoAwayParameter(frame.last_accepted_stream_id(), + active_streams_.size(), + unclaimed_pushed_streams_.size()))); RemoveFromPool(); CloseAllStreams(net::ERR_ABORTED); @@ -1210,7 +1222,7 @@ void SpdySession::OnSettings(const spdy::SpdySettingsControlFrame& frame) { net_log_.AddEvent( NetLog::TYPE_SPDY_SESSION_RECV_SETTINGS, - new NetLogSpdySettingsParameter(settings)); + make_scoped_refptr(new NetLogSpdySettingsParameter(settings))); } void SpdySession::OnWindowUpdate( @@ -1238,9 +1250,8 @@ void SpdySession::OnWindowUpdate( net_log_.AddEvent( NetLog::TYPE_SPDY_SESSION_SEND_WINDOW_UPDATE, - new NetLogSpdyWindowUpdateParameter(stream_id, - delta_window_size, - stream->send_window_size())); + make_scoped_refptr(new NetLogSpdyWindowUpdateParameter( + stream_id, delta_window_size, stream->send_window_size()))); } void SpdySession::SendWindowUpdate(spdy::SpdyStreamId stream_id, @@ -1251,9 +1262,8 @@ void SpdySession::SendWindowUpdate(spdy::SpdyStreamId stream_id, net_log_.AddEvent( NetLog::TYPE_SPDY_SESSION_RECV_WINDOW_UPDATE, - new NetLogSpdyWindowUpdateParameter(stream_id, - delta_window_size, - stream->recv_window_size())); + make_scoped_refptr(new NetLogSpdyWindowUpdateParameter( + stream_id, delta_window_size, stream->recv_window_size()))); scoped_ptr<spdy::SpdyWindowUpdateControlFrame> window_update_frame( spdy_framer_.CreateWindowUpdate(stream_id, delta_window_size)); @@ -1268,7 +1278,7 @@ void SpdySession::SendSettings() { net_log_.AddEvent( NetLog::TYPE_SPDY_SESSION_SEND_SETTINGS, - new NetLogSpdySettingsParameter(settings)); + make_scoped_refptr(new NetLogSpdySettingsParameter(settings))); // Create the SETTINGS frame and send it. scoped_ptr<spdy::SpdySettingsControlFrame> settings_frame( diff --git a/net/spdy/spdy_session_pool.cc b/net/spdy/spdy_session_pool.cc index fe2a310..aa807af 100644 --- a/net/spdy/spdy_session_pool.cc +++ b/net/spdy/spdy_session_pool.cc @@ -41,9 +41,10 @@ scoped_refptr<SpdySession> SpdySessionPool::Get( if (list->size() >= static_cast<unsigned int>(g_max_sessions_per_domain)) { spdy_session = list->front(); list->pop_front(); - net_log.AddEvent(NetLog::TYPE_SPDY_SESSION_POOL_FOUND_EXISTING_SESSION, - new NetLogSourceParameter("session", - spdy_session->net_log().source())); + net_log.AddEvent( + NetLog::TYPE_SPDY_SESSION_POOL_FOUND_EXISTING_SESSION, + make_scoped_refptr(new NetLogSourceParameter( + "session", spdy_session->net_log().source()))); } } else { list = AddSessionList(host_port_proxy_pair); @@ -53,9 +54,10 @@ scoped_refptr<SpdySession> SpdySessionPool::Get( if (!spdy_session) { spdy_session = new SpdySession(host_port_proxy_pair, this, spdy_settings, net_log.net_log()); - net_log.AddEvent(NetLog::TYPE_SPDY_SESSION_POOL_CREATED_NEW_SESSION, - new NetLogSourceParameter("session", - spdy_session->net_log().source())); + net_log.AddEvent( + NetLog::TYPE_SPDY_SESSION_POOL_CREATED_NEW_SESSION, + make_scoped_refptr(new NetLogSourceParameter( + "session", spdy_session->net_log().source()))); } DCHECK(spdy_session); @@ -81,9 +83,10 @@ net::Error SpdySessionPool::GetSpdySessionFromSocket( DCHECK(list->empty()); list->push_back(*spdy_session); - net_log.AddEvent(NetLog::TYPE_SPDY_SESSION_POOL_IMPORTED_SESSION_FROM_SOCKET, - new NetLogSourceParameter("session", - (*spdy_session)->net_log().source())); + net_log.AddEvent( + NetLog::TYPE_SPDY_SESSION_POOL_IMPORTED_SESSION_FROM_SOCKET, + make_scoped_refptr(new NetLogSourceParameter( + "session", (*spdy_session)->net_log().source()))); // Now we can initialize the session with the SSL socket. return (*spdy_session)->InitializeWithSocket(connection, is_secure, @@ -103,9 +106,10 @@ void SpdySessionPool::Remove(const scoped_refptr<SpdySession>& session) { if (!list) return; list->remove(session); - session->net_log().AddEvent(NetLog::TYPE_SPDY_SESSION_POOL_REMOVE_SESSION, - new NetLogSourceParameter("session", - session->net_log().source())); + session->net_log().AddEvent( + NetLog::TYPE_SPDY_SESSION_POOL_REMOVE_SESSION, + make_scoped_refptr(new NetLogSourceParameter( + "session", session->net_log().source()))); if (list->empty()) RemoveSessionList(session->host_port_proxy_pair()); } diff --git a/net/spdy/spdy_stream.cc b/net/spdy/spdy_stream.cc index 102d318..f26dd6d 100644 --- a/net/spdy/spdy_stream.cc +++ b/net/spdy/spdy_stream.cc @@ -60,8 +60,9 @@ SpdyStream::SpdyStream(SpdySession* session, net_log_(net_log), send_bytes_(0), recv_bytes_(0) { - net_log_.BeginEvent(NetLog::TYPE_SPDY_STREAM, - new NetLogIntegerParameter("stream_id", stream_id_)); + net_log_.BeginEvent( + NetLog::TYPE_SPDY_STREAM, + make_scoped_refptr(new NetLogIntegerParameter("stream_id", stream_id_))); } SpdyStream::~SpdyStream() { @@ -148,9 +149,10 @@ void SpdyStream::IncreaseSendWindowSize(int delta_window_size) { send_window_size_ = new_window_size; - net_log_.AddEvent(NetLog::TYPE_SPDY_STREAM_SEND_WINDOW_UPDATE, - new NetLogSpdyStreamWindowUpdateParameter(stream_id_, - delta_window_size, send_window_size_)); + net_log_.AddEvent( + NetLog::TYPE_SPDY_STREAM_SEND_WINDOW_UPDATE, + make_scoped_refptr(new NetLogSpdyStreamWindowUpdateParameter( + stream_id_, delta_window_size, send_window_size_))); if (stalled_by_flow_control_) { stalled_by_flow_control_ = false; io_state_ = STATE_SEND_BODY; @@ -170,9 +172,10 @@ void SpdyStream::DecreaseSendWindowSize(int delta_window_size) { send_window_size_ -= delta_window_size; - net_log_.AddEvent(NetLog::TYPE_SPDY_STREAM_SEND_WINDOW_UPDATE, - new NetLogSpdyStreamWindowUpdateParameter(stream_id_, - -delta_window_size, send_window_size_)); + net_log_.AddEvent( + NetLog::TYPE_SPDY_STREAM_SEND_WINDOW_UPDATE, + make_scoped_refptr(new NetLogSpdyStreamWindowUpdateParameter( + stream_id_, -delta_window_size, send_window_size_))); } void SpdyStream::IncreaseRecvWindowSize(int delta_window_size) { @@ -185,9 +188,10 @@ void SpdyStream::IncreaseRecvWindowSize(int delta_window_size) { DCHECK(new_window_size > 0); recv_window_size_ = new_window_size; - net_log_.AddEvent(NetLog::TYPE_SPDY_STREAM_RECV_WINDOW_UPDATE, - new NetLogSpdyStreamWindowUpdateParameter(stream_id_, - delta_window_size, recv_window_size_)); + net_log_.AddEvent( + NetLog::TYPE_SPDY_STREAM_RECV_WINDOW_UPDATE, + make_scoped_refptr(new NetLogSpdyStreamWindowUpdateParameter( + stream_id_, delta_window_size, recv_window_size_))); session_->SendWindowUpdate(stream_id_, delta_window_size); } @@ -195,9 +199,10 @@ void SpdyStream::DecreaseRecvWindowSize(int delta_window_size) { DCHECK_GE(delta_window_size, 1); recv_window_size_ -= delta_window_size; - net_log_.AddEvent(NetLog::TYPE_SPDY_STREAM_RECV_WINDOW_UPDATE, - new NetLogSpdyStreamWindowUpdateParameter(stream_id_, - -delta_window_size, recv_window_size_)); + net_log_.AddEvent( + NetLog::TYPE_SPDY_STREAM_RECV_WINDOW_UPDATE, + make_scoped_refptr(new NetLogSpdyStreamWindowUpdateParameter( + stream_id_, -delta_window_size, recv_window_size_))); // Since we never decrease the initial window size, we should never hit // a negative |recv_window_size_|, if we do, it's a flow-control violation. @@ -257,7 +262,7 @@ void SpdyStream::OnDataReceived(const char* data, int length) { if (length > 0) { IOBufferWithSize* buf = new IOBufferWithSize(length); memcpy(buf->data(), data, length); - pending_buffers_.push_back(buf); + pending_buffers_.push_back(make_scoped_refptr(buf)); } else { pending_buffers_.push_back(NULL); metrics_.StopStream(); @@ -298,7 +303,7 @@ void SpdyStream::OnDataReceived(const char* data, int length) { // We'll return received data when delegate gets attached to the stream. IOBufferWithSize* buf = new IOBufferWithSize(length); memcpy(buf->data(), data, length); - pending_buffers_.push_back(buf); + pending_buffers_.push_back(make_scoped_refptr(buf)); return; } |