[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug awt/28060] segfault in cairoDrawGlyphVector
From: |
hendrich at informatik dot uni-hamburg dot de |
Subject: |
[Bug awt/28060] segfault in cairoDrawGlyphVector |
Date: |
19 Jun 2006 10:34:39 -0000 |
------- Comment #2 from hendrich at informatik dot uni-hamburg dot de
2006-06-19 10:34 -------
(In reply to comment #1)
> Any more help you can give us? Are the fonts actually available?
>
I don't know. They should be, but classpath somehow uses Helvetica when
I request "TimesRoman". (This is the old JDK 1.1 style name, kept for best
portability with all JDKs I tested so far.)
I can now reproduce the crash with jfig, but my C/JNI debugging skills are
not up to the challenge. Can you please try to reproduce the bug?
1. Download jfig3,
http://tams-www.informatik.uni-hamburg.de/applets/jfig/archive/jfig3.jar
2. Run <java> -jar jfig3.jar
3. Select menu > file > open file... and select "fonttest.fig" (attached)
4. jamvm and cacao crash.
Stacktrace and some gdb debugging:
(gdb) where
#0 0x48e3b951 in _cairo_ft_font_face_scaled_font_create (
abstract_face=0x88abd88, font_matrix=0x878a37c, ctm=0x48e6624c,
options=0xbe7ff780, scaled_font=0x88abd88) at cairo-ft-font.c:2313
#1 0x48e28532 in cairo_scaled_font_create (font_face=0x88abd88,
font_matrix=0x878a37c, ctm=0x878a3dc, options=0xbe7ff780)
at cairo-font.c:725
#2 0x48e2be05 in _cairo_gstate_ensure_scaled_font (gstate=0x878a338)
at cairo-gstate.c:1920
#3 0x48e2c16f in _cairo_gstate_show_glyphs (gstate=0x878a338,
glyphs=0x8903fc0, num_glyphs=13) at cairo-gstate.c:2088
#4 0x48e25463 in cairo_show_glyphs (cr=0x878a300, glyphs=0x8903fc0,
num_glyphs=13) at cairo.c:2158
#5 0x48a609d1 in
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawGlyphVector (env=0x806201c,
obj=0x4105b770, pointer=Variable "pointer" is not available.
)
at gnu_java_awt_peer_gtk_CairoGraphics2D.c:309
#6 0x0805ecd5 in callJNIMethod (env=0x806201c, class=0x0,
sig=0x84e68d0 "(JLgnu/java/awt/peer/gtk/GdkFontPeer;FFI[I[F)V",
ret_type=0, ostack=0x84879b4,
f=0x48a60830 "U\211åWVS\203ì,\213U\fè\204ßÿÿ\201ÃÓ\021\002", args=9)
at dll_md.c:66
#7 0x0804f7a1 in callJNIWrapper (class=0x0, mb=0x84e7c4c, ostack=0x48e6624c)
at dll.c:322
(gdb) where
#0 0x48e3b951 in _cairo_ft_font_face_scaled_font_create (
abstract_face=0x88abd88, font_matrix=0x878a37c, ctm=0x48e6624c,
options=0xbe7ff780, scaled_font=0x88abd88) at cairo-ft-font.c:2313
#1 0x48e28532 in cairo_scaled_font_create (font_face=0x88abd88,
font_matrix=0x878a37c, ctm=0x878a3dc, options=0xbe7ff780)
at cairo-font.c:725
#2 0x48e2be05 in _cairo_gstate_ensure_scaled_font (gstate=0x878a338)
at cairo-gstate.c:1920
#3 0x48e2c16f in _cairo_gstate_show_glyphs (gstate=0x878a338,
glyphs=0x8903fc0, num_glyphs=13) at cairo-gstate.c:2088
#4 0x48e25463 in cairo_show_glyphs (cr=0x878a300, glyphs=0x8903fc0,
num_glyphs=13) at cairo.c:2158
#5 0x48a609d1 in
Java_gnu_java_awt_peer_gtk_CairoGraphics2D_cairoDrawGlyphVector (env=0x806201c,
obj=0x4105b770, pointer=Variable "pointer" is not available.
)
at gnu_java_awt_peer_gtk_CairoGraphics2D.c:309
(gdb) print font_matrix
$2 = (const cairo_matrix_t *) 0x878a37c
(gdb) print *font_matrix
$3 = {xx = 12, yx = 0, xy = 0, yy = 12, x0 = 0, y0 = 0}
(gdb) print *ctm
$4 = {xx = 1.3745368957117175e+43, yx = 1.3737712603859909e+43,
xy = 1.3741625851079936e+43, yy = 0, x0 = 0, y0 = 0}
(gdb) print *options
$5 = {antialias = CAIRO_ANTIALIAS_DEFAULT,
subpixel_order = CAIRO_SUBPIXEL_ORDER_DEFAULT,
hint_style = CAIRO_HINT_STYLE_DEFAULT,
hint_metrics = CAIRO_HINT_METRICS_DEFAULT}
(gdb) print *scaled_font
$6 = (cairo_scaled_font_t *) 0x88c95c0
(gdb) print **scaled_font
$7 = {hash_entry = {hash = 0}, status = 49, ref_count = 230060553,
font_face = 0x13efff17, font_matrix = {xx = 1.1868855429736783e-178,
yx = 9.33363564762739e-97, xy = 4.6327390968530745e-10,
yy = 5.2548853053385571e-98, x0 = 8.700182755605697e-313,
y0 = 4.3148246668677575e-314}, ctm = {xx = 1.6975966333156901e-313,
yx = 8.4879831678136144e-314, xy = 0, yy = 2.5676149070729202e-312,
x0 = 4.1406827721532551e-270, y0 = 3.9525251667299724e-323}, scale = {
xx = 0, yx = 0, xy = 0, yy = 4.1406826515839258e-270,
x0 = 2.0371159593316021e-312, y0 = 0}, options = {
antialias = CAIRO_ANTIALIAS_DEFAULT,
subpixel_order = CAIRO_SUBPIXEL_ORDER_DEFAULT,
hint_style = CAIRO_HINT_STYLE_DEFAULT, hint_metrics = 4095}, backend = 0x0}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28060