| 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..4d72e56a98d2c10e3aa3e3c5d7e59e77c3ec1594 100644
|
| --- a/chrome/browser/android/offline_pages/background_loader_offliner.cc
|
| +++ b/chrome/browser/android/offline_pages/background_loader_offliner.cc
|
| @@ -97,6 +97,35 @@ void BackgroundLoaderOffliner::DidStopLoading() {
|
| weak_ptr_factory_.GetWeakPtr()));
|
| }
|
|
|
| +void BackgroundLoaderOffliner::RenderProcessGone(
|
| + base::TerminationStatus status) {
|
| + if (pending_request_) {
|
| + SavePageRequest request(*pending_request_.get());
|
| + switch (status) {
|
| + case base::TERMINATION_STATUS_OOM:
|
| + case base::TERMINATION_STATUS_PROCESS_CRASHED:
|
| + case base::TERMINATION_STATUS_STILL_RUNNING:
|
| + completion_callback_.Run(
|
| + request, Offliner::RequestStatus::LOADING_FAILED_NO_NEXT);
|
| + break;
|
| + case base::TERMINATION_STATUS_PROCESS_WAS_KILLED:
|
| + default:
|
| + completion_callback_.Run(request,
|
| + Offliner::RequestStatus::LOADING_FAILED);
|
| + }
|
| + ResetState();
|
| + }
|
| +}
|
| +
|
| +void BackgroundLoaderOffliner::WebContentsDestroyed() {
|
| + if (pending_request_) {
|
| + SavePageRequest request(*pending_request_.get());
|
| + completion_callback_.Run(*pending_request_.get(),
|
| + Offliner::RequestStatus::LOADING_FAILED);
|
| + ResetState();
|
| + }
|
| +}
|
| +
|
| void BackgroundLoaderOffliner::OnPageSaved(SavePageResult save_result,
|
| int64_t offline_id) {
|
| if (!pending_request_)
|
|
|