Chromium Code Reviews| Index: chrome/browser/renderer_host/socket_stream_host.cc |
| diff --git a/chrome/browser/renderer_host/socket_stream_host.cc b/chrome/browser/renderer_host/socket_stream_host.cc |
| index 211064f332a3fa6d3d1a64b1b0fa768b4e30b306..89379d1873c5b53711f218e43a95a67c644b2f53 100644 |
| --- a/chrome/browser/renderer_host/socket_stream_host.cc |
| +++ b/chrome/browser/renderer_host/socket_stream_host.cc |
| @@ -9,8 +9,10 @@ |
| #include "chrome/common/net/socket_stream.h" |
| #include "chrome/common/net/url_request_context_getter.h" |
| #include "chrome/common/render_messages.h" |
| +#include "chrome/common/render_messages_params.h" |
| #include "net/socket_stream/socket_stream_job.h" |
|
Randy Smith (Not in Mondays)
2010/12/26 19:44:28
Nit: Remove extra blank line.
|
| + |
| static const char* kSocketHostKey = "socketHost"; |
| class SocketStreamInfo : public net::SocketStream::UserData { |
| @@ -55,9 +57,23 @@ SocketStreamHost::~SocketStreamHost() { |
| void SocketStreamHost::Connect(const GURL& url) { |
| VLOG(1) << "SocketStreamHost::Connect url=" << url; |
| socket_ = net::SocketStreamJob::CreateSocketStreamJob(url, delegate_); |
| - URLRequestContextGetter* context_getter = Profile::GetDefaultRequestContext(); |
| - if (context_getter) |
| - socket_->set_context(context_getter->GetURLRequestContext()); |
| + |
| + // We use request_id==0 and request_data.resource_type=ResourceType::LAST_TYPE |
| + // here. |
| + // ResourceMessageFilter::GetRequestContext() doesn't check request_id |
| + // and only checks request_data.resource_type is ResourceType::MEDIA or not. |
| + // TODO(ukai): merge WebSocketStreamHandleBridge into ResourceLoaderBridge, |
| + // so that we can use the same request_id. |
| + ViewHostMsg_Resource_Request request_data; |
| + request_data.resource_type = ResourceType::LAST_TYPE; |
| + URLRequestContext* context = receiver_->GetRequestContext(0, request_data); |
| + if (!context) { |
| + URLRequestContextGetter* context_getter = |
| + Profile::GetDefaultRequestContext(); |
| + if (context_getter) |
| + context = context_getter->GetURLRequestContext(); |
| + } |
| + socket_->set_context(context); |
| socket_->SetUserData(kSocketHostKey, new SocketStreamInfo(this)); |
| socket_->Connect(); |
| } |