| Index: skia/ext/vector_platform_device_linux.cc
 | 
| diff --git a/skia/ext/vector_platform_device_linux.cc b/skia/ext/vector_platform_device_linux.cc
 | 
| index 3d4559615ac4a2eed474d53c60a17978e535acdd..4bf5fd1908505a29a54d46c67dd8e8594f0dce6b 100644
 | 
| --- a/skia/ext/vector_platform_device_linux.cc
 | 
| +++ b/skia/ext/vector_platform_device_linux.cc
 | 
| @@ -12,8 +12,8 @@
 | 
|  
 | 
|  #include <map>
 | 
|  
 | 
| +#include "base/lazy_instance.h"
 | 
|  #include "base/logging.h"
 | 
| -#include "base/singleton.h"
 | 
|  #include "skia/ext/bitmap_platform_device.h"
 | 
|  #include "third_party/skia/include/core/SkFontHost.h"
 | 
|  #include "third_party/skia/include/core/SkStream.h"
 | 
| @@ -29,6 +29,8 @@ struct FontInfo {
 | 
|  };
 | 
|  
 | 
|  typedef std::map<uint32_t, FontInfo> MapFontId2FontInfo;
 | 
| +static base::LazyInstance<MapFontId2FontInfo> g_map_font_id_to_font_info(
 | 
| +    base::LINKER_INITIALIZED);
 | 
|  
 | 
|  // Wrapper for FT_Library that handles initialization and cleanup, and allows
 | 
|  // us to use a singleton.
 | 
| @@ -55,6 +57,7 @@ class FtLibrary {
 | 
|   private:
 | 
|    FT_Library library_;
 | 
|  };
 | 
| +static base::LazyInstance<FtLibrary> g_ft_library(base::LINKER_INITIALIZED);
 | 
|  
 | 
|  // Verify cairo surface after creation/modification.
 | 
|  bool IsContextValid(cairo_t* context) {
 | 
| @@ -592,12 +595,12 @@ bool VectorPlatformDevice::SelectFontById(uint32_t font_id) {
 | 
|    DCHECK(IsContextValid(context_));
 | 
|    DCHECK(SkFontHost::ValidFontID(font_id));
 | 
|  
 | 
| -  FtLibrary* ft_library = Singleton<FtLibrary>::get();
 | 
| +  FtLibrary* ft_library = g_ft_library.Pointer();
 | 
|    if (!ft_library->library())
 | 
|      return false;
 | 
|  
 | 
|    // Checks if we have a cache hit.
 | 
| -  MapFontId2FontInfo* g_font_cache = Singleton<MapFontId2FontInfo>::get();
 | 
| +  MapFontId2FontInfo* g_font_cache = g_map_font_id_to_font_info.Pointer();
 | 
|    DCHECK(g_font_cache);
 | 
|  
 | 
|    MapFontId2FontInfo::iterator it = g_font_cache->find(font_id);
 | 
| @@ -667,7 +670,7 @@ bool VectorPlatformDevice::SelectFontById(uint32_t font_id) {
 | 
|  
 | 
|  // static
 | 
|  void VectorPlatformDevice::ClearFontCache() {
 | 
| -  MapFontId2FontInfo* g_font_cache = Singleton<MapFontId2FontInfo>::get();
 | 
| +  MapFontId2FontInfo* g_font_cache = g_map_font_id_to_font_info.Pointer();
 | 
|    DCHECK(g_font_cache);
 | 
|  
 | 
|    for (MapFontId2FontInfo::iterator it = g_font_cache->begin();
 | 
| 
 |