diff options
Diffstat (limited to 'net/socket/ssl_client_socket_pool.cc')
-rw-r--r-- | net/socket/ssl_client_socket_pool.cc | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/net/socket/ssl_client_socket_pool.cc b/net/socket/ssl_client_socket_pool.cc index fed268d..d07c76f 100644 --- a/net/socket/ssl_client_socket_pool.cc +++ b/net/socket/ssl_client_socket_pool.cc @@ -287,11 +287,11 @@ int SSLConnectJob::DoSSLConnect() { connect_timing_.ssl_start = base::TimeTicks::Now(); - ssl_socket_.reset(client_socket_factory_->CreateSSLClientSocket( - transport_socket_handle_.release(), + ssl_socket_ = client_socket_factory_->CreateSSLClientSocket( + transport_socket_handle_.Pass(), params_->host_and_port(), params_->ssl_config(), - context_)); + context_); return ssl_socket_->Connect(callback_); } @@ -410,7 +410,7 @@ int SSLConnectJob::DoSSLConnectComplete(int result) { } if (result == OK || IsCertificateError(result)) { - set_socket(ssl_socket_.release()); + SetSocket(ssl_socket_.PassAs<StreamSocket>()); } else if (result == ERR_SSL_CLIENT_AUTH_CERT_NEEDED) { error_response_info_.cert_request_info = new SSLCertRequestInfo; ssl_socket_->GetSSLCertRequestInfo( @@ -527,14 +527,16 @@ SSLClientSocketPool::~SSLClientSocketPool() { ssl_config_service_->RemoveObserver(this); } -ConnectJob* SSLClientSocketPool::SSLConnectJobFactory::NewConnectJob( +scoped_ptr<ConnectJob> +SSLClientSocketPool::SSLConnectJobFactory::NewConnectJob( const std::string& group_name, const PoolBase::Request& request, ConnectJob::Delegate* delegate) const { - return new SSLConnectJob(group_name, request.params(), ConnectionTimeout(), - transport_pool_, socks_pool_, http_proxy_pool_, - client_socket_factory_, host_resolver_, - context_, delegate, net_log_); + return scoped_ptr<ConnectJob>( + new SSLConnectJob(group_name, request.params(), ConnectionTimeout(), + transport_pool_, socks_pool_, http_proxy_pool_, + client_socket_factory_, host_resolver_, + context_, delegate, net_log_)); } base::TimeDelta @@ -572,8 +574,9 @@ void SSLClientSocketPool::CancelRequest(const std::string& group_name, } void SSLClientSocketPool::ReleaseSocket(const std::string& group_name, - StreamSocket* socket, int id) { - base_.ReleaseSocket(group_name, socket, id); + scoped_ptr<StreamSocket> socket, + int id) { + base_.ReleaseSocket(group_name, socket.Pass(), id); } void SSLClientSocketPool::FlushWithError(int error) { |