Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6592)

Unified Diff: chrome/browser/ui/webui/chrome_url_data_manager.cc

Issue 8590003: chrome: Remove 11 exit time destructors and 4 static initializers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: no gyp changes :-( Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/chrome_url_data_manager.cc
diff --git a/chrome/browser/ui/webui/chrome_url_data_manager.cc b/chrome/browser/ui/webui/chrome_url_data_manager.cc
index 23b61e7640958ba44081621869351fb2d0c949bf..f9eabaeb3b7470609be87c6f58a94c6b64543bca 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) !=
« chrome/browser/ui/browser_list.cc ('K') | « chrome/browser/ui/webui/chrome_url_data_manager.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698