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

Side by Side Diff: chrome/common/extensions/extension_message_bundle.cc

Issue 8491043: Allow linker initialization of lazy instance (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: willchan comments + rebase 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/ui/webui/web_ui_browsertest.cc ('k') | chrome/common/profiling.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/common/extensions/extension_message_bundle.h" 5 #include "chrome/common/extensions/extension_message_bundle.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/hash_tables.h" 10 #include "base/hash_tables.h"
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after
318 318
319 // Unique class for Singleton. 319 // Unique class for Singleton.
320 struct ExtensionToMessagesMap { 320 struct ExtensionToMessagesMap {
321 ExtensionToMessagesMap(); 321 ExtensionToMessagesMap();
322 ~ExtensionToMessagesMap(); 322 ~ExtensionToMessagesMap();
323 323
324 // Maps extension ID to message map. 324 // Maps extension ID to message map.
325 ExtensionToL10nMessagesMap messages_map; 325 ExtensionToL10nMessagesMap messages_map;
326 }; 326 };
327 327
328 static base::LazyInstance<ExtensionToMessagesMap> g_extension_to_messages_map( 328 static base::LazyInstance<ExtensionToMessagesMap> g_extension_to_messages_map =
329 base::LINKER_INITIALIZED); 329 LAZY_INSTANCE_INITIALIZER;
330 330
331 ExtensionToMessagesMap::ExtensionToMessagesMap() {} 331 ExtensionToMessagesMap::ExtensionToMessagesMap() {}
332 332
333 ExtensionToMessagesMap::~ExtensionToMessagesMap() {} 333 ExtensionToMessagesMap::~ExtensionToMessagesMap() {}
334 334
335 ExtensionToL10nMessagesMap* GetExtensionToL10nMessagesMap() { 335 ExtensionToL10nMessagesMap* GetExtensionToL10nMessagesMap() {
336 return &g_extension_to_messages_map.Get().messages_map; 336 return &g_extension_to_messages_map.Get().messages_map;
337 } 337 }
338 338
339 L10nMessagesMap* GetL10nMessagesMap(const std::string& extension_id) { 339 L10nMessagesMap* GetL10nMessagesMap(const std::string& extension_id) {
340 ExtensionToL10nMessagesMap::iterator it = 340 ExtensionToL10nMessagesMap::iterator it =
341 g_extension_to_messages_map.Get().messages_map.find(extension_id); 341 g_extension_to_messages_map.Get().messages_map.find(extension_id);
342 if (it != g_extension_to_messages_map.Get().messages_map.end()) 342 if (it != g_extension_to_messages_map.Get().messages_map.end())
343 return &(it->second); 343 return &(it->second);
344 344
345 return NULL; 345 return NULL;
346 } 346 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/web_ui_browsertest.cc ('k') | chrome/common/profiling.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698