From: Robert O'Callahan 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)