summaryrefslogtreecommitdiffstats
path: root/chrome/common/sandbox_mac_fontloading_unittest.mm
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/common/sandbox_mac_fontloading_unittest.mm')
-rw-r--r--chrome/common/sandbox_mac_fontloading_unittest.mm32
1 files changed, 14 insertions, 18 deletions
diff --git a/chrome/common/sandbox_mac_fontloading_unittest.mm b/chrome/common/sandbox_mac_fontloading_unittest.mm
index 834fc0b..17f4a4a 100644
--- a/chrome/common/sandbox_mac_fontloading_unittest.mm
+++ b/chrome/common/sandbox_mac_fontloading_unittest.mm
@@ -16,6 +16,7 @@
namespace {
using sandboxtest::MacSandboxTest;
+using sandbox::Sandbox;
bool CGFontFromFontContainer(ATSFontContainerRef container, CGFontRef* out) {
// Count the number of fonts that were loaded.
@@ -91,16 +92,11 @@ bool FontLoadingTestCase::BeforeSandboxInit() {
return false;
}
- if (!font_shmem_->Create("", false, false, font_data_length_)) {
+ if (!font_shmem_->CreateAndMapAnonymous(font_data_length_)) {
LOG(ERROR) << "SharedMemory::Create failed";
return false;
}
- if (!font_shmem_->Map(font_data_length_)) {
- LOG(ERROR) << "SharedMemory::Map failed";
- return false;
- }
-
memcpy(font_shmem_->memory(), font_data.c_str(), font_data_length_);
if (!font_shmem_->Unmap()) {
LOG(ERROR) << "SharedMemory::Unmap failed";
@@ -126,32 +122,32 @@ bool FontLoadingTestCase::SandboxedTest() {
// Unload the font container when done.
ScopedFontContainer scoped_unloader(font_container);
- CGFontRef font_ref;
- if (!CGFontFromFontContainer(font_container, &font_ref)) {
+ CGFontRef cg_font_ref;
+ if (!CGFontFromFontContainer(font_container, &cg_font_ref)) {
LOG(ERROR) << "CGFontFromFontContainer failed";
return false;
}
- if (!font_ref) {
+ if (!cg_font_ref) {
LOG(ERROR) << "Got NULL CGFontRef";
return false;
}
- base::mac::ScopedCFTypeRef<CGFontRef> cgfont;
- cgfont.reset(font_ref);
+ base::mac::ScopedCFTypeRef<CGFontRef> cgfont(cg_font_ref);
+
+ CTFontRef ct_font_ref =
+ CTFontCreateWithGraphicsFont(cgfont.get(), 16.0, NULL, NULL);
+ base::mac::ScopedCFTypeRef<CTFontRef> ctfont(ct_font_ref);
- const NSFont* nsfont = reinterpret_cast<const NSFont*>(
- CTFontCreateWithGraphicsFont(cgfont.get(), 16.0,
- NULL, NULL));
- if (!nsfont) {
+ if (!ct_font_ref) {
LOG(ERROR) << "CTFontCreateWithGraphicsFont() failed";
return false;
}
// Do something with the font to make sure it's loaded.
- CGFloat cap_height = [nsfont capHeight];
+ CGFloat cap_height = CTFontGetCapHeight(ct_font_ref);
if (cap_height <= 0.0) {
- LOG(ERROR) << "Got bad value for [NSFont capHeight] " << cap_height;
+ LOG(ERROR) << "Got bad value for CTFontGetCapHeight " << cap_height;
return false;
}
@@ -174,7 +170,7 @@ TEST_F(MacSandboxTest, FontLoadingTest) {
file_util::WriteFileDescriptor(fileno(temp_file),
static_cast<const char *>(font_data.memory()), font_data_size);
- ASSERT_TRUE(RunTestInSandbox(sandbox::SANDBOX_TYPE_RENDERER,
+ ASSERT_TRUE(RunTestInSandbox(Sandbox::SANDBOX_TYPE_RENDERER,
"FontLoadingTestCase", temp_file_path.value().c_str()));
temp_file_closer.reset();
ASSERT_TRUE(file_util::Delete(temp_file_path, false));