diff options
author | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-01 01:05:11 +0000 |
---|---|---|
committer | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-01 01:05:11 +0000 |
commit | b2448200e68aab938f1c20259c1efe966da397cf (patch) | |
tree | a1f91d9db0f02282e13867f109587e901d8420fa /chrome/browser/importer/importer_list.cc | |
parent | fb534c949f92bec8c6312b58ffcc04c5dc488f2d (diff) | |
download | chromium_src-b2448200e68aab938f1c20259c1efe966da397cf.zip chromium_src-b2448200e68aab938f1c20259c1efe966da397cf.tar.gz chromium_src-b2448200e68aab938f1c20259c1efe966da397cf.tar.bz2 |
Importer: Add a RemoveObserver method to ImporterList and use this method by
clients when they are destroyed.
BUG=67174
TEST=none
Review URL: http://codereview.chromium.org/6409028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73233 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/importer/importer_list.cc')
-rw-r--r-- | chrome/browser/importer/importer_list.cc | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/chrome/browser/importer/importer_list.cc b/chrome/browser/importer/importer_list.cc index a6c85d1..80b1e84 100644 --- a/chrome/browser/importer/importer_list.cc +++ b/chrome/browser/importer/importer_list.cc @@ -164,6 +164,10 @@ void ImporterList::DetectSourceProfiles(Observer* observer) { NewRunnableMethod(this, &ImporterList::DetectSourceProfilesWorker)); } +void ImporterList::SetObserver(Observer* observer) { + observer_ = observer; +} + void ImporterList::DetectSourceProfilesHack() { DetectSourceProfilesWorker(); } @@ -258,7 +262,10 @@ void ImporterList::SourceProfilesLoaded( source_profiles_->assign(profiles.begin(), profiles.end()); source_profiles_loaded_ = true; - observer_->SourceProfilesLoaded(); - observer_ = NULL; source_thread_id_ = BrowserThread::UI; + + if (observer_) { + observer_->SourceProfilesLoaded(); + observer_ = NULL; + } } |