| Index: components/history/core/browser/history_backend.h
|
| diff --git a/components/history/core/browser/history_backend.h b/components/history/core/browser/history_backend.h
|
| index 6959994ab1ae814988b99a55bda09e7a17a89aaf..185618b648f6617f2f05c3c65faf6437517fe519 100644
|
| --- a/components/history/core/browser/history_backend.h
|
| +++ b/components/history/core/browser/history_backend.h
|
| @@ -20,6 +20,7 @@
|
| #include "base/gtest_prod_util.h"
|
| #include "base/macros.h"
|
| #include "base/memory/memory_pressure_listener.h"
|
| +#include "base/memory/weak_ptr.h"
|
| #include "base/observer_list.h"
|
| #include "base/single_thread_task_runner.h"
|
| #include "base/supports_user_data.h"
|
| @@ -42,7 +43,6 @@ class SingleThreadTaskRunner;
|
| }
|
|
|
| namespace history {
|
| -class CommitLaterTask;
|
| struct DownloadRow;
|
| class HistoryBackendClient;
|
| class HistoryBackendDBBaseTest;
|
| @@ -480,7 +480,6 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>,
|
|
|
| private:
|
| friend class base::RefCountedThreadSafe<HistoryBackend>;
|
| - friend class CommitLaterTask; // The commit task needs to call Commit().
|
| friend class HistoryBackendTest;
|
| friend class HistoryBackendDBBaseTest; // So the unit tests can poke our
|
| // innards.
|
| @@ -828,10 +827,10 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>,
|
| ExpireHistoryBackend expirer_;
|
|
|
| // A commit has been scheduled to occur sometime in the future. We can check
|
| - // non-null-ness to see if there is a commit scheduled in the future, and we
|
| - // can use the pointer to cancel the scheduled commit. There can be only one
|
| - // scheduled commit at a time (see ScheduleCommit).
|
| - scoped_refptr<CommitLaterTask> scheduled_commit_;
|
| + // HasTrackedTasks() to see if there is a commit scheduled in the future, and
|
| + // we can use TryCancelAll() to cancel the scheduled commit. There can be
|
| + // only one scheduled commit at a time (see ScheduleCommit).
|
| + base::CancelableTaskTracker scheduled_commit_tracker_;
|
|
|
| // Maps recent redirect destination pages to the chain of redirects that
|
| // brought us to there. Pages that did not have redirects or were not the
|
| @@ -890,6 +889,8 @@ class HistoryBackend : public base::RefCountedThreadSafe<HistoryBackend>,
|
| // List of observers
|
| base::ObserverList<HistoryBackendObserver> observers_;
|
|
|
| + base::WeakPtrFactory<HistoryBackend> weak_ptr_factory_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(HistoryBackend);
|
| };
|
|
|
|
|