| 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
|
|
|