summaryrefslogtreecommitdiffstats
path: root/base/base_paths_win.cc
diff options
context:
space:
mode:
authorscottmg@chromium.org <scottmg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-26 01:41:04 +0000
committerscottmg@chromium.org <scottmg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-26 01:41:04 +0000
commit3f18e8db464aa841e82b536d85de26f77fd2a2b1 (patch)
tree3d12007f6e43710c1b433c849b21d7d538b4f791 /base/base_paths_win.cc
parent6db416a41378f54d8376beb26dc40daac472e690 (diff)
downloadchromium_src-3f18e8db464aa841e82b536d85de26f77fd2a2b1.zip
chromium_src-3f18e8db464aa841e82b536d85de26f77fd2a2b1.tar.gz
chromium_src-3f18e8db464aa841e82b536d85de26f77fd2a2b1.tar.bz2
Support DirectWrite with sandbox on
This seems to be enough to get DirectWrite working with the sandbox on. There's two parts: 1. Warmup for three things: the dwrite.dll, creating a font, and accessing glyph metrics. 2. A renderer sandbox policy allowing readonly fonts directory access. Manually tested working on Win 8.1, Win 7 Pro SP1 with QFE 2670838, and Win Home Basic RTM (no SPs or QFEs). Blink side here: https://codereview.chromium.org/210243004 but can land independently after this change. R=brettw@chromium.org, cpu@chromium.org, jam@chromium.org, jschuh@chromium.org, darin@chromium.org BUG=333029 TEST=Run with --enable-direct-write and http://wikipedia.org/ Review URL: https://codereview.chromium.org/209163002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259434 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/base_paths_win.cc')
-rw-r--r--base/base_paths_win.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/base/base_paths_win.cc b/base/base_paths_win.cc
index d4e11ae..509d5fd 100644
--- a/base/base_paths_win.cc
+++ b/base/base_paths_win.cc
@@ -191,6 +191,13 @@ bool PathProviderWin(int key, FilePath* result) {
cur = cur.AppendASCII("User Pinned");
cur = cur.AppendASCII("TaskBar");
break;
+ case base::DIR_WINDOWS_FONTS:
+ if (FAILED(SHGetFolderPath(
+ NULL, CSIDL_FONTS, NULL, SHGFP_TYPE_CURRENT, system_buffer))) {
+ return false;
+ }
+ cur = FilePath(system_buffer);
+ break;
default:
return false;
}