Chromium Code Reviews| Index: chrome/browser/android/offline_pages/background_loader_offliner.cc |
| diff --git a/chrome/browser/android/offline_pages/background_loader_offliner.cc b/chrome/browser/android/offline_pages/background_loader_offliner.cc |
| index 096a5229acc2c2d6cb5eefe0f4bf9c3ef3b58c11..55a92f8e23846990ea0128d4e21dd8562709cbf4 100644 |
| --- a/chrome/browser/android/offline_pages/background_loader_offliner.cc |
| +++ b/chrome/browser/android/offline_pages/background_loader_offliner.cc |
| @@ -97,6 +97,30 @@ void BackgroundLoaderOffliner::DidStopLoading() { |
| weak_ptr_factory_.GetWeakPtr())); |
| } |
| +void BackgroundLoaderOffliner::RenderProcessGone( |
|
Pete Williamson
2016/12/21 20:49:28
What would cause a call to RenderProcessGone? I d
|
| + base::TerminationStatus status) { |
| + SavePageRequest request(*pending_request_.get()); |
| + switch (status) { |
| + case TERMINATION_STATUS_OOM: |
| + case TERMINATION_STATUS_PROCESS_CRASHED: |
| + case TERMINATION_STATUS_STILL_RUNNING: |
| + completion_callback_.Run(request, |
| + Offliner::RequestStatus::LOADING_FAILED_NO_NEXT); |
| + break; |
| + case TERMINATION_STATUS_PROCESS_WAS_KILLED: |
|
dougarnett
2016/12/22 01:37:53
Can you share any insight on this case? Cleanly ki
|
| + default: |
| + completion_callback_.Run(request, |
| + Offliner::RequestStatus::LOADING_FAILED); |
| + } |
| + ResetState(); |
| +} |
| + |
| +void BackgroundLoaderOffliner::WebContentsDestroyed() { |
| + completion_callback_.Run(*pending_request_.get(), |
| + Offliner::RequestStatus::LOADING_FAILED); |
| + ResetState(); |
| +} |
| + |
| void BackgroundLoaderOffliner::OnPageSaved(SavePageResult save_result, |
| int64_t offline_id) { |
| if (!pending_request_) |