mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-13 23:17:57 +00:00
3a3124a625
--HG-- extra : rebase_source : ba6ada662a871fbf3bdd2ee3b2a8f031fd213e4b
27 lines
1.1 KiB
Diff
27 lines
1.1 KiB
Diff
From: Robert O'Callahan <robert@ocallahan.org>
|
|
Bug 717178. Part 1: Don't crash when passing a nil scaled-font to _name_tables_match. r=jfkthame
|
|
|
|
diff --git a/gfx/cairo/cairo/src/cairo-dwrite-font.cpp b/gfx/cairo/cairo/src/cairo-dwrite-font.cpp
|
|
--- a/gfx/cairo/cairo/src/cairo-dwrite-font.cpp
|
|
+++ b/gfx/cairo/cairo/src/cairo-dwrite-font.cpp
|
|
@@ -1489,17 +1489,18 @@ static cairo_bool_t
|
|
unsigned long size1;
|
|
unsigned long size2;
|
|
cairo_int_status_t status1;
|
|
cairo_int_status_t status2;
|
|
unsigned char *buffer1;
|
|
unsigned char *buffer2;
|
|
cairo_bool_t result = false;
|
|
|
|
- if (!font1->backend->load_truetype_table ||
|
|
+ if (!font1->backend || !font2->backend ||
|
|
+ !font1->backend->load_truetype_table ||
|
|
!font2->backend->load_truetype_table)
|
|
return false;
|
|
|
|
status1 = font1->backend->load_truetype_table (font1,
|
|
TT_TAG_name, 0, NULL, &size1);
|
|
status2 = font2->backend->load_truetype_table (font2,
|
|
TT_TAG_name, 0, NULL, &size2);
|
|
if (status1 || status2)
|