Index: content/browser/loader/sync_resource_handler.cc |
diff --git a/content/browser/loader/sync_resource_handler.cc b/content/browser/loader/sync_resource_handler.cc |
index 47991f5fe248acc2114d71b914a537af7f9c5729..ee7361f7c350654866af842f27e91ace10517bc1 100644 |
--- a/content/browser/loader/sync_resource_handler.cc |
+++ b/content/browser/loader/sync_resource_handler.cc |
@@ -20,25 +20,19 @@ namespace content { |
SyncResourceHandler::SyncResourceHandler( |
net::URLRequest* request, |
- IPC::Message* result_message, |
+ const SyncLoadResultCallback& result_handler, |
ResourceDispatcherHostImpl* resource_dispatcher_host) |
: ResourceHandler(request), |
read_buffer_(new net::IOBuffer(kReadBufSize)), |
- result_message_(result_message), |
+ result_handler_(result_handler), |
rdh_(resource_dispatcher_host), |
total_transfer_size_(0) { |
result_.final_url = request->url(); |
} |
SyncResourceHandler::~SyncResourceHandler() { |
- if (result_message_) { |
- result_message_->set_reply_error(); |
- ResourceMessageFilter* filter = GetFilter(); |
- // If the filter doesn't exist at this point, the process has died and isn't |
- // waiting for the result message anymore. |
- if (filter) |
- filter->Send(result_message_); |
- } |
+ if (result_handler_) |
+ result_handler_.Run(nullptr); |
yhirano
2016/10/05 08:49:53
This nullptr is corresponding to L427 in resource_
tzik
2016/10/06 12:52:03
Done.
|
} |
bool SyncResourceHandler::OnRequestRedirected( |
@@ -124,9 +118,8 @@ void SyncResourceHandler::OnResponseCompleted( |
result_.encoded_data_length = total_transfer_size_ + total_transfer_size; |
result_.encoded_body_length = request()->GetRawBodyBytes(); |
- ResourceHostMsg_SyncLoad::WriteReplyParams(result_message_, result_); |
- filter->Send(result_message_); |
- result_message_ = NULL; |
+ result_handler_.Run(&result_); |
+ result_handler_.Reset(); |
mmenke
2016/10/05 15:21:33
base::ResetAndReturn(result_handler_).Run?
tzik
2016/10/06 12:52:03
Done.
|
return; |
} |