| Index: content/common/font_warmup_win.h
|
| diff --git a/content/common/font_warmup_win.h b/content/common/font_warmup_win.h
|
| index 7a0e9b502c7e8c4c3d5c36d29532c3305d63cf8f..587b731a7b980b555181020d13447ca6466d100e 100644
|
| --- a/content/common/font_warmup_win.h
|
| +++ b/content/common/font_warmup_win.h
|
| @@ -50,6 +50,24 @@ CONTENT_EXPORT void SetPreSandboxWarmupFontMgrForTesting(SkFontMgr* fontmgr);
|
| // Warmup the direct write font manager for content processes.
|
| CONTENT_EXPORT void WarmupDirectWrite();
|
|
|
| +// Directwrite connects to the font cache service to retrieve information about
|
| +// fonts installed on the system etc. This works well outside the sandbox and
|
| +// within the sandbox as long as the lpc connection maintained by the current
|
| +// process with the font cache service remains valid. It appears that there
|
| +// are cases when this connection is dropped after which directwrite is unable
|
| +// to connect to the font cache service which causes problems with characters
|
| +// disappearing.
|
| +// Directwrite has fallback code to enumerate fonts if it is unable to connect
|
| +// to the font cache service. We need to intercept the following APIs to
|
| +// ensure that it does not connect to the font cache service.
|
| +// NtALpcConnectPort
|
| +// OpenSCManagerW
|
| +// OpenServiceW
|
| +// StartServiceW
|
| +// CloseServiceHandle.
|
| +// These are all IAT patched.
|
| +CONTENT_EXPORT void PatchServiceManagerCalls();
|
| +
|
| } // namespace content
|
|
|
| #endif // CONTENT_COMMON_FONT_WARMUP_WIN_H_
|
|
|