DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (31ec81b5d7bb)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
From: Jonathan Kew <jkew@mozilla.com>
bug 838617 - don't assert equality with the key's hash unless it was actually initialized. r=roc

diff --git a/gfx/cairo/cairo/src/cairo-win32-font.c b/gfx/cairo/cairo/src/cairo-win32-font.c
--- a/gfx/cairo/cairo/src/cairo-win32-font.c
+++ b/gfx/cairo/cairo/src/cairo-win32-font.c
@@ -2104,19 +2104,19 @@ cairo_win32_font_face_create_for_logfont
     font_face = malloc (sizeof (cairo_win32_font_face_t));
     if (!font_face) {
         _cairo_error_throw (CAIRO_STATUS_NO_MEMORY);
 	goto FAIL;
     }
 
     _cairo_win32_font_face_init_key (font_face, logfont, font);
     _cairo_font_face_init (&font_face->base, &_cairo_win32_font_face_backend);
-    assert (font_face->base.hash_entry.hash == key.base.hash_entry.hash);
 
     if (!font) {
+        assert (font_face->base.hash_entry.hash == key.base.hash_entry.hash);
         status = _cairo_hash_table_insert (hash_table,
                                            &font_face->base.hash_entry);
         if (unlikely (status))
 	    goto FAIL;
     }
 
 DONE:
     if (!font) {