Index: ui/gfx/font_fallback_win.cc |
diff --git a/ui/gfx/font_fallback_win.cc b/ui/gfx/font_fallback_win.cc |
index e3e89dffee6326e5d1d1260acb7e9a317195ac9d..02afed5006bc5babb3783183f8dc3e62e1d4a5f1 100644 |
--- a/ui/gfx/font_fallback_win.cc |
+++ b/ui/gfx/font_fallback_win.cc |
@@ -29,8 +29,6 @@ namespace gfx { |
namespace { |
-IDWriteFactory* g_factory = nullptr; |
- |
// Queries the registry to get a mapping from font filenames to font names. |
void QueryFontsFromRegistry(std::map<std::string, std::string>* map) { |
const wchar_t* kFonts = |
@@ -350,11 +348,10 @@ bool GetFallbackFont(const Font& font, |
// renderer should instead use the font proxy. |
DCHECK(base::MessageLoopForUI::IsCurrent()); |
- if (g_factory == nullptr) { |
- gfx::win::CreateDWriteFactory(&g_factory); |
- } |
+ base::win::ScopedComPtr<IDWriteFactory> factory; |
+ gfx::win::CreateDWriteFactory(factory.Receive()); |
base::win::ScopedComPtr<IDWriteFactory2> factory2; |
- g_factory->QueryInterface(factory2.Receive()); |
+ factory.QueryInterface(factory2.Receive()); |
if (!factory2) { |
// IDWriteFactory2 is not available before Win8.1 |
return GetUniscribeFallbackFont(font, text, text_length, result); |