After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 313685 - Latest Pango [1.10.0] crashes evolution 2.2
Latest Pango [1.10.0] crashes evolution 2.2
Status: RESOLVED FIXED
Product: pango
Classification: Platform
Component: general
1.10.x
Other All
: High critical
: ---
Assigned To: pango-maint
pango-maint
Depends on:
Blocks:
 
 
Reported: 2005-08-17 03:20 UTC by Glynn Foster
Modified: 2005-08-17 23:02 UTC
See Also:
GNOME target: ---
GNOME version: 2.9/2.10


Attachments
broken test patch (1.13 KB, patch)
2005-08-17 03:21 UTC, Glynn Foster
none Details | Review
fullwidth space patch (910 bytes, patch)
2005-08-17 03:22 UTC, Glynn Foster
none Details | Review
pua patch (3.80 KB, patch)
2005-08-17 03:22 UTC, Glynn Foster
none Details | Review
Fedora eviction cache patch (478 bytes, patch)
2005-08-17 23:02 UTC, Glynn Foster
none Details | Review

Description Glynn Foster 2005-08-17 03:20:31 UTC
Steps to reproduce:
I don't seem to be able to easily reproduce this.

Stack trace:
Backtrace was generated from '/usr/bin/evolution-2.2'

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 1096615296 (LWP 1471)]
[New Thread 1160268720 (LWP 2222)]
[Thread debugging using libthread_db enabled]
[New Thread 1096615296 (LWP 1471)]
[New Thread 1160268720 (LWP 2222)]
[Thread debugging using libthread_db enabled]
[New Thread 1096615296 (LWP 1471)]
[New Thread 1160268720 (LWP 2222)]
[New Thread 1156406192 (LWP 1561)]
[New Thread 1154304944 (LWP 1517)]
[New Thread 1113000880 (LWP 1477)]
[New Thread 1110506416 (LWP 1476)]
[New Thread 1107577776 (LWP 1474)]
[New Thread 1105476528 (LWP 1473)]
0xffffe410 in ?? ()

Thread 8 (Thread 1105476528 (LWP 1473))

  • #0 ??
  • #1 ??
  • #2 ??
  • #3 ??
  • #4 pthread_cond_wait
    from /lib/tls/libpthread.so.0
  • #5 e_msgport_wait
    at e-msgport.c line 514


Other information:
We patch pango with the attached patches - it may not make a difference, but an
important point to note.
Comment 1 Glynn Foster 2005-08-17 03:21:16 UTC
Created attachment 50826 [details] [review]
broken test patch
Comment 2 Glynn Foster 2005-08-17 03:22:01 UTC
Created attachment 50827 [details] [review]
fullwidth space patch
Comment 3 Glynn Foster 2005-08-17 03:22:30 UTC
Created attachment 50828 [details] [review]
pua patch
Comment 4 Glynn Foster 2005-08-17 03:26:08 UTC
I usually see the crash on chinese spam messages fwiw.

freetype2-devel-2.1.7-53.5
freetype2-2.1.7-53.5
Comment 5 Owen Taylor 2005-08-17 20:33:09 UTC
If it happens again

(gdb) frame 11
(gdb) p *(PangoCairoFcFont *)font

Would be useful

Comment 6 Glynn Foster 2005-08-17 22:31:56 UTC
(gdb) p *(PangoCairoFcFont *)font
$1 = {font = {parent_instance = {parent_instance = {g_type_instance = {
          g_class = 0x860b320}, ref_count = 22, qdata = 0x0}},
    font_pattern = 0x8958320, fontmap = 0x85aa4d8, context_key = 0x8955938,
    matrix = {xx = 1, xy = 0, yx = 0, yy = 1, x0 = 0, y0 = 0},
    description = 0x8957698, metrics_by_lang = 0xa9af798, is_hinted = 1,
    is_transformed = 0}, font_face = 0xa96bbb8, scaled_font = 0xa7f1ab8,
  font_matrix = {xx = 13.333333333333334, yx = 0, xy = 0,
    yy = 13.333333333333334, x0 = 0, y0 = 0}, ctm = {xx = 1, yx = 0, xy = 0,
    yy = 1, x0 = 0, y0 = 0}, options = 0x89580d0, glyph_info = 0x8954fc0}
Comment 7 Glynn Foster 2005-08-17 22:35:55 UTC
Full trace -

  • #0 FcFreeTypeCharIndex
    at fcfreetype.c line 1751
  • #1 pango_fc_font_real_get_glyph
    at pangofc-font.c line 507
  • #2 pango_fc_font_get_glyph
    at pangofc-font.c line 613
  • #3 basic_engine_shape
  • #4 _pango_engine_shape_shape
    at pango-engine.c line 73
  • #5 pango_shape
  • #6 shape_run
    at pango-layout.c line 2699
  • #7 process_item
    at pango-layout.c line 2790
  • #8 pango_layout_check_lines
    at pango-layout.c line 2998
  • #9 pango_layout_get_extents_internal
    at pango-layout.c line 2023
  • #10 pango_fc_font_create_metrics_for_context
    at pangofc-font.c line 415
  • #11 pango_cairo_fc_font_get_metrics
    at pangocairo-fcfont.c line 289
  • #12 pango_font_get_metrics
    at fonts.c line 1212
  • #13 update_asc_dsc
    at htmltext.c line 860
  • #14 html_text_calc_part_width
    at htmltext.c line 982
  • #15 calc_preferred_width
    at htmltext.c line 1006
  • #16 html_object_calc_preferred_width
    at htmlobject.c line 1133
  • #17 html_text_real_calc_size
    at htmltext.c line 744
  • #18 html_object_calc_size
    at htmlobject.c line 1069
  • #19 html_clue_flow_real_calc_size
    at htmlclueflow.c line 877
  • #20 html_object_calc_size
    at htmlobject.c line 1069
  • #21 html_cluev_do_layout
    at htmlcluev.c line 210
  • #22 html_object_calc_size
    at htmlobject.c line 1069
  • #23 html_cluev_do_layout
    at htmlcluev.c line 210
  • #24 html_object_calc_size
    at htmlobject.c line 1069
  • #25 html_engine_calc_size
    at htmlengine.c line 4961
  • #26 html_engine_update_event
    at htmlengine.c line 4511
  • #27 html_engine_timer_event
    at htmlengine.c line 4665
  • #28 html_engine_flush
    at htmlengine.c line 6476
  • #29 gtk_html_flush
    at gtkhtml.c line 5772
  • #30 emhs_sync_flush
    at em-html-stream.c line 127
  • #31 emcs_gui_received
    at em-sync-stream.c line 161
  • #32 g_io_unix_dispatch
    at giounix.c line 162
  • #33 IA__g_main_context_dispatch
    at gmain.c line 1934
  • #34 g_main_context_iterate
    at gmain.c line 2565
  • #35 IA__g_main_loop_run
    at gmain.c line 2769
  • #36 bonobo_main
    at bonobo-main.c line 297
  • #37 main
    at main.c line 610

Comment 8 Glynn Foster 2005-08-17 22:39:36 UTC
(gdb) p *face
$4 = {num_faces = 177894672, face_index = 1, face_flags = 177887256,
  style_flags = 177211240, num_glyphs = 1, family_name = 0xa900658 "Courier",
  style_name = 0xa9a57f0 "WEIGHT_NAME", num_fixed_sizes = 1,
  available_sizes = 0xa98c860, num_charmaps = 177894888, charmaps = 0x1,
  generic = {data = 0xa96bee0, finalizer = 0xa98d0b8}, bbox = {xMin = 1,
    yMin = 177651440, xMax = 177227776, yMax = 1}, units_per_EM = 48896,
  ascender = 2710, descender = -16624, height = 2710, max_advance_width = 0,
  max_advance_height = 0, underline_position = 12, underline_thickness = 0,
  glyph = 0xa96bf20, size = 0x0, charmap = 0x78, driver = 0x88c9dd8,
  memory = 0x0, stream = 0x4b, sizes_list = {head = 0x88c9cc0, tail = 0x0},
  autohint = {data = 0x4b, finalizer = 0xa96bf30}, extensions = 0x1,
  internal = 0xa96bf40}
Comment 9 Glynn Foster 2005-08-17 22:41:56 UTC
Also seeing a lots of -

Gdk-CRITICAL **: gdk_drawable_get_colormap: assertion `GDK_IS_DRAWABLE
(drawable)' failed

Gdk-WARNING **: gdk_window_set_back_pixmap(): pixmap must have a colormap

type warnings with various applications. Probably is a separate issue.
Comment 10 Glynn Foster 2005-08-17 22:59:14 UTC
I've applied eviction cache patch from the Fedora packages and the crash doesn't
appear to be happening. Will attach the patch below.
Comment 11 Glynn Foster 2005-08-17 23:02:11 UTC
Created attachment 50878 [details] [review]
Fedora eviction cache patch