diff -r 000000000000 -r 6474c204b198 gfx/cairo/dwrite-font-match-robustness.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gfx/cairo/dwrite-font-match-robustness.patch Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,26 @@ +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)