diff options
author | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-25 21:25:31 +0000 |
---|---|---|
committer | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-25 21:25:31 +0000 |
commit | 22a27de7ddd22505f5f281d2fe90a124b7d6ecf0 (patch) | |
tree | be34167345b2c3871c783cca9e16aefa0da1d4bb /chrome/common/sandbox_methods_linux.h | |
parent | e1b1a5fa61da772666bf58632979776f0651c981 (diff) | |
download | chromium_src-22a27de7ddd22505f5f281d2fe90a124b7d6ecf0.zip chromium_src-22a27de7ddd22505f5f281d2fe90a124b7d6ecf0.tar.gz chromium_src-22a27de7ddd22505f5f281d2fe90a124b7d6ecf0.tar.bz2 |
Linux: plumb fontconfig call out to the sandbox host.
This is hopefully the last step before our renderers can run cleanly
in a chroot.
WebKit needs to be able to ask for the correct font to use in the case
that the current font doesn't include glyphs for certain code points.
Currently we make a fontconfig call in our WebKit port to handle this.
This patch changes this so that the call is sent our via
ChromiumBridge. Since we are at ChromiumBridge, we could make a sync
IPC to the browser. However, fontconfig is a single threaded library
and we are already using it on the UI thread in the browser, so the
sync IPC would have to terminate on the UI thread. Even if this
doesn't deadlock, it causes huge spikes in latency.
So, instead, we send the IPC to the sandbox host process which is
already setup to handle fontconfig requests from Skia. See:
http://code.google.com/p/chromium/wiki/LinuxSandboxIPC
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19287 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/sandbox_methods_linux.h')
-rw-r--r-- | chrome/common/sandbox_methods_linux.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/chrome/common/sandbox_methods_linux.h b/chrome/common/sandbox_methods_linux.h new file mode 100644 index 0000000..cfa2c84 --- /dev/null +++ b/chrome/common/sandbox_methods_linux.h @@ -0,0 +1,19 @@ +// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_COMMON_SANDBOX_METHODS_LINUX_H_ +#define CHROME_COMMON_SANDBOX_METHODS_LINUX_H_ + +// This is a list of sandbox IPC methods which the renderer may send to the +// sandbox host. See http://code.google.com/p/chromium/LinuxSandboxIPC +// This isn't the full list, values < 32 are reserved for methods called from +// Skia. +class LinuxSandbox { + public: + enum Methods { + METHOD_GET_FONT_FAMILY_FOR_CHARS = 32, + }; +}; + +#endif // CHROME_COMMON_SANDBOX_METHODS_LINUX_H_ |