https://github.com/mozilla/gecko-dev
Raw File
Tip revision: 65baa7add9fb515f95b0e6404616de76537b1757 authored by ffxbld on 17 January 2017, 12:37:08 UTC
Added FENNEC_51_0_RELEASE FENNEC_51_0_BUILD1 tag(s) for changeset 792e280b5c36. DONTBUILD CLOSED TREE a=release
Tip revision: 65baa7a
dwrite-font-match-robustness.patch
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)
back to top