Index: chrome/browser/bookmarks/bookmark_model.cc |
diff --git a/chrome/browser/bookmarks/bookmark_model.cc b/chrome/browser/bookmarks/bookmark_model.cc |
index 6fb0cdf1d34b3c96782535d2a7b7fa25fada87b8..e663b4dfa48ab0add7303e6172ef0335256972dc 100644 |
--- a/chrome/browser/bookmarks/bookmark_model.cc |
+++ b/chrome/browser/bookmarks/bookmark_model.cc |
@@ -120,7 +120,7 @@ BookmarkModel::BookmarkModel(Profile* profile) |
synced_node_(NULL), |
next_node_id_(1), |
observers_(ObserverList<BookmarkModelObserver>::NOTIFY_EXISTING_ONLY), |
- loaded_signal_(TRUE, FALSE) { |
+ loaded_signal_(true, false) { |
if (!profile_) { |
// Profile is null during testing. |
DoneLoading(CreateLoadDetails()); |
@@ -144,6 +144,14 @@ void BookmarkModel::RegisterUserPrefs(PrefService* prefs) { |
PrefService::SYNCABLE_PREF); |
} |
+void BookmarkModel::Cleanup() { |
+ if (loaded_) |
+ return; |
+ |
+ // See comment in Profile shutdown code where this is invoked for details. |
+ loaded_signal_.Signal(); |
+} |
+ |
void BookmarkModel::Load() { |
if (store_.get()) { |
// If the store is non-null, it means Load was already invoked. Load should |