| Index: content/child/dwrite_font_proxy/dwrite_font_proxy_init_win.cc
|
| diff --git a/content/child/dwrite_font_proxy/dwrite_font_proxy_init_win.cc b/content/child/dwrite_font_proxy/dwrite_font_proxy_init_win.cc
|
| index da083233fb2f7fccb082bb85c9d33e77b69249e9..4feaae2a0d6b915591c9f7d899d223d43f7bfba8 100644
|
| --- a/content/child/dwrite_font_proxy/dwrite_font_proxy_init_win.cc
|
| +++ b/content/child/dwrite_font_proxy/dwrite_font_proxy_init_win.cc
|
| @@ -60,16 +60,27 @@ void CreateDirectWriteFactory(IDWriteFactory** factory) {
|
| reinterpret_cast<IUnknown**>(factory))));
|
| }
|
|
|
| +// Needed as a function for Bind()
|
| +IPC::Sender* GetSenderOverride() {
|
| + return g_sender_override;
|
| +}
|
| +
|
| } // namespace
|
|
|
| -void InitializeDWriteFontProxy() {
|
| +void InitializeDWriteFontProxy(
|
| + const base::Callback<IPC::Sender*(void)>& sender) {
|
| mswr::ComPtr<IDWriteFactory> factory;
|
|
|
| CreateDirectWriteFactory(&factory);
|
|
|
| if (!g_font_collection) {
|
| - mswr::MakeAndInitialize<DWriteFontCollectionProxy>(
|
| - &g_font_collection, factory.Get(), g_sender_override);
|
| + if (g_sender_override) {
|
| + mswr::MakeAndInitialize<DWriteFontCollectionProxy>(
|
| + &g_font_collection, factory.Get(), base::Bind(&GetSenderOverride));
|
| + } else {
|
| + mswr::MakeAndInitialize<DWriteFontCollectionProxy>(&g_font_collection,
|
| + factory.Get(), sender);
|
| + }
|
| }
|
|
|
| mswr::ComPtr<IDWriteFontFallback> font_fallback;
|
|
|