| Index: components/offline_pages/core/offline_page_model_impl.cc
|
| diff --git a/components/offline_pages/core/offline_page_model_impl.cc b/components/offline_pages/core/offline_page_model_impl.cc
|
| index 32f8213107a614134f35d528905eba5225ce9de0..011dfbe2a1670cf224c0f9d3590e227b9ee7c57f 100644
|
| --- a/components/offline_pages/core/offline_page_model_impl.cc
|
| +++ b/components/offline_pages/core/offline_page_model_impl.cc
|
| @@ -717,6 +717,7 @@ void OfflinePageModelImpl::OnAddOfflinePageDone(
|
| const OfflinePageItem& offline_page,
|
| ItemActionStatus status) {
|
| SavePageResult result;
|
| +
|
| if (status == ItemActionStatus::SUCCESS) {
|
| offline_pages_[offline_page.offline_id] = offline_page;
|
| result = SavePageResult::SUCCESS;
|
| @@ -739,8 +740,13 @@ void OfflinePageModelImpl::OnAddOfflinePageDone(
|
| }
|
|
|
| DeletePendingArchiver(archiver);
|
| +
|
| + // We don't want to notify observers if the add failed.
|
| + if (result != SavePageResult::SUCCESS)
|
| + return;
|
| +
|
| for (Observer& observer : observers_)
|
| - observer.OfflinePageModelChanged(this);
|
| + observer.OfflinePageAdded(this, offline_page);
|
| }
|
|
|
| void OfflinePageModelImpl::OnMarkPageAccesseDone(
|
|
|