summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/webui/chrome_url_data_manager.cc
diff options
context:
space:
mode:
authorthakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-17 06:06:15 +0000
committerthakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-17 06:06:15 +0000
commite4de6b5d0a654164e312f6213d81c41df7ca5eed (patch)
tree04e72943e8b22305d6aeee85c288987ebd3dce33 /chrome/browser/ui/webui/chrome_url_data_manager.cc
parent383a0ca55d444ac67c9be491f74e591b7c1ccea7 (diff)
downloadchromium_src-e4de6b5d0a654164e312f6213d81c41df7ca5eed.zip
chromium_src-e4de6b5d0a654164e312f6213d81c41df7ca5eed.tar.gz
chromium_src-e4de6b5d0a654164e312f6213d81c41df7ca5eed.tar.bz2
chrome: Remove 11 exit time destructors and 4 static initializers.
BUG=101600,94925 TEST=none TBR=erg,willchan Review URL: http://codereview.chromium.org/8590003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110447 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/webui/chrome_url_data_manager.cc')
-rw-r--r--chrome/browser/ui/webui/chrome_url_data_manager.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/chrome/browser/ui/webui/chrome_url_data_manager.cc b/chrome/browser/ui/webui/chrome_url_data_manager.cc
index 23b61e7..f9eabae 100644
--- a/chrome/browser/ui/webui/chrome_url_data_manager.cc
+++ b/chrome/browser/ui/webui/chrome_url_data_manager.cc
@@ -8,6 +8,7 @@
#include "base/bind.h"
#include "base/i18n/rtl.h"
+#include "base/lazy_instance.h"
#include "base/memory/ref_counted_memory.h"
#include "base/memory/scoped_ptr.h"
#include "base/message_loop.h"
@@ -27,8 +28,9 @@
using content::BrowserThread;
-// static
-base::Lock ChromeURLDataManager::delete_lock_;
+static base::LazyInstance<base::Lock,
+ base::LeakyLazyInstanceTraits<base::Lock> >
+ g_delete_lock = LAZY_INSTANCE_INITIALIZER;
// static
ChromeURLDataManager::DataSources* ChromeURLDataManager::data_sources_ = NULL;
@@ -62,7 +64,7 @@ void ChromeURLDataManager::DeleteDataSources() {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
DataSources sources;
{
- base::AutoLock lock(delete_lock_);
+ base::AutoLock lock(g_delete_lock.Get());
if (!data_sources_)
return;
data_sources_->swap(sources);
@@ -84,7 +86,7 @@ void ChromeURLDataManager::DeleteDataSource(const DataSource* data_source) {
// to delete.
bool schedule_delete = false;
{
- base::AutoLock lock(delete_lock_);
+ base::AutoLock lock(g_delete_lock.Get());
if (!data_sources_)
data_sources_ = new DataSources();
schedule_delete = data_sources_->empty();
@@ -101,7 +103,7 @@ void ChromeURLDataManager::DeleteDataSource(const DataSource* data_source) {
// static
bool ChromeURLDataManager::IsScheduledForDeletion(
const DataSource* data_source) {
- base::AutoLock lock(delete_lock_);
+ base::AutoLock lock(g_delete_lock.Get());
if (!data_sources_)
return false;
return std::find(data_sources_->begin(), data_sources_->end(), data_source) !=