[cairo] firefox/cairo crashes on solaris 9

sam sirlin samuel.w.sirlin at jpl.nasa.gov
Thu Apr 19 11:36:05 PDT 2007


I see that firefox 2.0.0.3 can crash even the latest 1.4.4
cairo (I've seen this with all other versions). 

I'm running on solaris9 sparc, building using gcc 4.1.1/4.1.2
Crashes seem to be mostly associated with poping up a window,
e.g. download.  

Using ddd : 
 
Program received signal SIGSEGV, Segmentation fault.
0xfe521b78 in cairo_scaled_font_create (font_face=0x1998700, font_matrix=0x25060b8, ctm=0x25060e8, options=0x2580e08) at cairo-scaled-font.c:537
cairo-1.4.4/src/cairo-scaled-font.c:537:17128:beg:0xfe521b78

This is

 536     /* Otherwise create it and insert it into the hash table. */
 537     status = font_face->backend->scaled_font_create (font_face, font_matrix,
 538                                                      ctm, options, &scaled_font);


$1 = (cairo_font_face_t *) 0x1998700
(gdb) print *font_face
$2 = {hash_entry = {hash = 0}, status = CAIRO_STATUS_SUCCESS, ref_count = 1, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, backend = 0x0}
(gdb) print font_matrix
$3 = (const cairo_matrix_t *) 0x25060b8
(gdb) print *font_matrix
$4 = {xx = 12.5244140625, yx = 0, xy = 0, yy = 12.5244140625, x0 = 0, y0 = 0}
(gdb) print ctm
$5 = (const cairo_matrix_t *) 0x25060e8
(gdb) print *ctm
$6 = {xx = 1, yx = 0, xy = 0, yy = 1, x0 = 0, y0 = 0}
(gdb) print options
$7 = (const cairo_font_options_t *) 0x2580e08
(gdb) print *options
$8 = {antialias = CAIRO_ANTIALIAS_NONE, subpixel_order = CAIRO_SUBPIXEL_ORDER_DEFAULT, hint_style = CAIRO_HINT_STYLE_MEDIUM, hint_metrics = CAIRO_HINT_METRICS_ON}
(gdb) print scaled_font
$9 = (cairo_scaled_font_t *) 0x0
(gdb) print font_face->backend->scaled_font_create
Cannot access memory at address 0x8
(gdb) print *font_face
$10 = {hash_entry = {hash = 0}, status = CAIRO_STATUS_SUCCESS, ref_count = 1, user_data = {size = 0, num_elements = 0, element_size = 12, elements = 0x0, is_snapshot = 0}, backend = 0x0}
(gdb) 

So somehow font_face doesn't have a backend... Any clue on how to fix
this? 

Thanks

-- 
sam sirlin <samuel.w.sirlin at jpl.nasa.gov>


More information about the cairo mailing list