| Index: chrome/browser/sync/glue/typed_url_change_processor.cc
|
| diff --git a/chrome/browser/sync/glue/typed_url_change_processor.cc b/chrome/browser/sync/glue/typed_url_change_processor.cc
|
| index 83bdb90d483f9c7f3778ba21275d0e5b56ad45c4..ca865b653fdc3087d434cffa0fbe17f551dbf6cc 100644
|
| --- a/chrome/browser/sync/glue/typed_url_change_processor.cc
|
| +++ b/chrome/browser/sync/glue/typed_url_change_processor.cc
|
| @@ -307,7 +307,9 @@ void TypedUrlChangeProcessor::CommitChangesFromSyncModel() {
|
| if (!running())
|
| return;
|
|
|
| - StopObserving();
|
| + // Make sure we stop listening for changes while we're modifying the backend,
|
| + // so we don't try to re-apply these changes to the sync DB.
|
| + ScopedStopObserving<TypedUrlChangeProcessor> stop_observing(this);
|
| if (!pending_deleted_urls_.empty())
|
| history_backend_->DeleteURLs(pending_deleted_urls_);
|
|
|
| @@ -327,8 +329,6 @@ void TypedUrlChangeProcessor::CommitChangesFromSyncModel() {
|
| pending_new_visits_.clear();
|
| pending_deleted_visits_.clear();
|
| pending_deleted_urls_.clear();
|
| -
|
| - StartObserving();
|
| }
|
|
|
| void TypedUrlChangeProcessor::StartImpl(Profile* profile) {
|
|
|