[sylpheed-jp:10044] 特定のメール表示で暴走

M.Suzuki msuzuki @ syd.odn.ne.jp
2006年 10月 27日 (金) 12:03:05 JST


こんにちは。M.Suzukiです。

あるSpamメールを表示しようとしたら暴走したので、
一応念のために報告しておきます。

現象:
Summyからメールを選択した直後に、操作不能になります。

考察:
gdb上で動作させて、暴走中に何度かCtrl-Cで止めてbacktraceしたところ、
gtk_text_layout_*辺りで何度も引っかかりました。
Gtkのバグかもしれません。

backtraceの一例:
^C
Program received signal SIGINT, Interrupt.
0x0162ae1c in dyld_stub_pango_is_zero_width ()
(gdb) bt
#0  0x0162ae1c in dyld_stub_pango_is_zero_width ()
#1  0x0162a920 in basic_engine_shape (engine=0x575b8d6, font=0x199d5b0, text=0x575b8d6 "窖202\222 蛔202窖201\204窖201・\202\213窖200\220窖201・\202\212窖201\223窖200\221窖201\225窖202\223窖201・∈茯\215窖202\222窖201\212蕁\230窖201\204窖201\227窖201障\201\231窖200\202", length=12434, analysis=0x1efa33c, glyphs=0x1ef9de0) at basic-fc.c:382
#2  0x00644050 in pango_shape (text=0x575b8d6 "窖202\222 蛔202窖201\204窖201・\202\213窖200\220窖201・\202\212窖201\223窖200\221窖201\225窖202\223窖201・∈茯\215窖202\222窖201\212蕁\230窖201\204窖201\227窖201障\201\231窖200\202", length=3, analysis=0x1efa33c, glyphs=0x1ef9de0) at shape.c:51
#3  0x006397e8 in shape_run (line=0x156e40, state=0xbfffb2d0, item=0x1efa330) at pango-layout.c:2760
#4  0x00639988 in process_item (layout=0x1b7b640, line=0x156e40, state=0xbfffb2d0, force_fit=0, no_break_at_end=0) at pango-layout.c:2852
#5  0x00639e9c in process_line (layout=0x1b7b640, state=0xbfffb2d0) at pango-layout.c:3054
#6  0x0063a68c in pango_layout_check_lines (layout=0x1b7b640) at pango-layout.c:3351
#7  0x00638b2c in pango_layout_get_extents_internal (layout=0x1b7b640, ink_rect=0x0, logical_rect=0xbfffb4c0, line_extents=0x0) at pango-layout.c:2064
#8  0x0126d9b4 in gtk_text_layout_get_line_display ()
#9  0x0126b53c in gtk_text_layout_real_wrap ()
#10 0x0126a420 in gtk_text_layout_wrap ()
#11 0x01248288 in _gtk_text_btree_validate_line ()
#12 0x0126b160 in gtk_text_layout_validate_yrange ()
#13 0x01280358 in gtk_text_view_validate_onscreen ()
#14 0x0128045c in gtk_text_view_flush_first_validate ()
#15 0x01280238 in gtk_text_view_size_allocate ()
#16 0x00348d4c in g_closure_invoke ()
#17 0x0035c6e8 in signal_emit_unlocked_R ()
#18 0x0035bd04 in g_signal_emit_valist ()
#19 0x0035bfa4 in g_signal_emit ()
#20 0x01314b48 in gtk_widget_size_allocate ()
#21 0x011f14d8 in gtk_scrolled_window_size_allocate ()
#22 0x00348d4c in g_closure_invoke ()
#23 0x0035c6e8 in signal_emit_unlocked_R ()
#24 0x0035bd04 in g_signal_emit_valist ()
#25 0x0035bfa4 in g_signal_emit ()
#26 0x01314b48 in gtk_widget_size_allocate ()
#27 0x0130982c in gtk_vbox_size_allocate ()
#28 0x00348d4c in g_closure_invoke ()
#29 0x0035c6e8 in signal_emit_unlocked_R ()
#30 0x0035bd04 in g_signal_emit_valist ()
#31 0x0035bfa4 in g_signal_emit ()
#32 0x01314b48 in gtk_widget_size_allocate ()
#33 0x01188e3c in gtk_notebook_size_allocate ()
#34 0x00348d4c in g_closure_invoke ()
#35 0x0035c6e8 in signal_emit_unlocked_R ()
#36 0x0035bd04 in g_signal_emit_valist ()
#37 0x0035bfa4 in g_signal_emit ()
#38 0x01314b48 in gtk_widget_size_allocate ()
#39 0x0130982c in gtk_vbox_size_allocate ()
#40 0x00348d4c in g_closure_invoke ()
#41 0x0035c6e8 in signal_emit_unlocked_R ()
#42 0x0035bd04 in g_signal_emit_valist ()
#43 0x0035bfa4 in g_signal_emit ()
#44 0x01314b48 in gtk_widget_size_allocate ()
#45 0x0130ca68 in gtk_vpaned_size_allocate ()
#46 0x00348d4c in g_closure_invoke ()
#47 0x0035c6e8 in signal_emit_unlocked_R ()
#48 0x0035bd04 in g_signal_emit_valist ()
#49 0x0035bfa4 in g_signal_emit ()
#50 0x01314b48 in gtk_widget_size_allocate ()
#51 0x0110199c in gtk_hpaned_size_allocate ()
#52 0x00348d4c in g_closure_invoke ()
#53 0x0035c6e8 in signal_emit_unlocked_R ()
#54 0x0035bd04 in g_signal_emit_valist ()
#55 0x0035bfa4 in g_signal_emit ()
#56 0x01314b48 in gtk_widget_size_allocate ()
#57 0x0130982c in gtk_vbox_size_allocate ()
#58 0x00348d4c in g_closure_invoke ()
#59 0x0035c6e8 in signal_emit_unlocked_R ()
#60 0x0035bd04 in g_signal_emit_valist ()
#61 0x0035bfa4 in g_signal_emit ()
#62 0x01314b48 in gtk_widget_size_allocate ()
#63 0x0130982c in gtk_vbox_size_allocate ()
#64 0x00348d4c in g_closure_invoke ()
#65 0x0035c6e8 in signal_emit_unlocked_R ()
#66 0x0035bd04 in g_signal_emit_valist ()
#67 0x0035bfa4 in g_signal_emit ()
#68 0x01314b48 in gtk_widget_size_allocate ()
#69 0x0132bc88 in gtk_window_size_allocate ()
#70 0x00348d4c in g_closure_invoke ()
#71 0x0035c6e8 in signal_emit_unlocked_R ()
#72 0x0035bd04 in g_signal_emit_valist ()
#73 0x0035bfa4 in g_signal_emit ()
#74 0x01314b48 in gtk_widget_size_allocate ()
#75 0x010898cc in gtk_container_resize_children ()
#76 0x0132e1d8 in gtk_window_move_resize ()
#77 0x0132ca5c in gtk_window_check_resize ()
#78 0x00348d4c in g_closure_invoke ()
#79 0x0035cc70 in signal_emit_unlocked_R ()
#80 0x0035bd04 in g_signal_emit_valist ()
#81 0x0035bfa4 in g_signal_emit ()
#82 0x010896c0 in gtk_container_check_resize ()
#83 0x01089300 in gtk_container_idle_sizer ()
#84 0x018d4634 in g_main_dispatch ()
#85 0x018d4c3c in g_main_context_iterate ()
#86 0x018cfd60 in g_main_loop_run ()
#87 0x0115de60 in gtk_main ()
#88 0x00002f24 in main ()
#89 0x000027b4 in _start (argc=34999056, argv=0x11e0c4, envp=0x2128800) at /SourceCache/Csu/Csu-47/crt.c:267
#90 0x8fe1a31c in __dyld__dyld_start ()

動作環境:
OSX 10.3.9
Sylpheed 2.3.0beta3(trunk 20061018時点)
GTK+2.10.3 / GLib 2.12.4

以上、何かの参考になれば幸いです。



Sylpheed-jp メーリングリストの案内