[Pidgin] #8218: Pidgin hangs for few seconds when opening a conversation window

Pidgin trac at pidgin.im
Fri Jan 23 08:29:42 EST 2009


#8218: Pidgin hangs for few seconds when opening a conversation window
--------------------+-------------------------------------------------------
 Reporter:  el.il   |        Owner:              
     Type:  defect  |       Status:  new         
Milestone:          |    Component:  pidgin (gtk)
  Version:  2.5.4   |   Resolution:              
 Keywords:          |  
--------------------+-------------------------------------------------------

Comment(by el.il):

 I think this is the relevant GDB output:

 {{{
 #0  0x00007fffe2fdb359 in HashMgr::add_word (this=<value optimized out>,
     word=<value optimized out>, wbl=<value optimized out>,
     wcl=<value optimized out>, aff=0x610fab0, al=<value optimized out>,
     desc=0x0, onlyupcase=false) at hashmgr.cxx:180
         upcasehomonym = false
         hpw = 0x610faf1 "פרוות"
         i = <value optimized out>
         dp = (hentry *) 0x5454e70
 #1  0x00007fffe2fdb9d5 in HashMgr::load_tables (this=0x680a780,
     tpath=<value optimized out>, key=<value optimized out>) at
 hashmgr.cxx:474
         captype = 0
         wcl = 5
         al = 1
         ap = <value optimized out>
         dp = 0x0
         flags = (short unsigned int *) 0x610fab0
         ts = 0x3d96900 "פרוות"
         dict = <value optimized out>
 #2  0x00007fffe2fdbd92 in HashMgr (this=0x680a780,
     tpath=0x680dd90 "/usr/share/myspell/he_IL.dic",
     apath=<value optimized out>, key=0x0) at hashmgr.cxx:52
 No locals.
 #3  0x00007fffe2fe124a in Hunspell (this=0x680e1e0,
 ---Type <return> to continue, or q <return> to quit---
     affpath=0x680dd60 "/usr/share/myspell/he_IL.aff",
     dpath=0x680dd90 "/usr/share/myspell/he_IL.dic", key=0x0) at
 hunspell.cxx:35
 No locals.
 #4  0x00007fffe32022de in MySpellChecker::requestDictionary
 (this=0x680e540,
     szLang=0x3a48af9000 "") at myspell_checker.cpp:374
         dic = 0x680dd90 "/usr/share/myspell/he_IL.dic"
         aff = 0x680dd60 "/usr/share/myspell/he_IL.aff"
         enc = <value optimized out>
 #5  0x00007fffe3202430 in myspell_provider_request_dict (
     me=<value optimized out>, tag=0x680cd50 "he_IL") at
 myspell_checker.cpp:495
         dict = (EnchantDict *) 0x1
         checker = <value optimized out>
 #6  0x00000037b0c049a6 in _enchant_broker_request_dict (broker=0x680dca0,
     tag=0x680cd50 "he_IL") at enchant.c:1719
         provider = (EnchantProvider *) 0x680de10
         dict = (EnchantDict *) 0x0
         list = (GSList *) 0x3d93ac0
 #7  0x00000037b0c04ba9 in enchant_broker_request_dict (broker=0x680dca0,
     tag=0x7fffffffee0e "he_IL.utf8") at enchant.c:1765
         dict = <value optimized out>
         normalized_tag = <value optimized out>
         __PRETTY_FUNCTION__ = "enchant_broker_request_dict"
 #8  0x00000037b180438a in gtkspell_set_language_internal (spell=0x3d96050,
 ---Type <return> to continue, or q <return> to quit---
     lang=0x7fffffffee0e "he_IL.utf8", error=0x7fffffffb170) at
 gtkspell.c:567
 No locals.
 #9  0x00000037b1804551 in gtkspell_new_attach (view=0xdec540, lang=0x0,
     error=0x7fffffffb170) at gtkspell.c:655
         buffer = <value optimized out>
         tagtable = <value optimized out>
         start = {dummy1 = 0xffffb138, dummy2 = 0x0, dummy3 = 0, dummy4 =
 0,
   dummy5 = 4658592, dummy6 = 0, dummy7 = 14599488, dummy8 = 0,
   dummy9 = 0xde00e0, dummy10 = 0x6840800, dummy11 = -1461340663, dummy12 =
 55,
   dummy13 = 14599488, dummy14 = 0x37a8e2a340}
         end = {dummy1 = 0xdec540, dummy2 = 0x37a920d70d, dummy3 = 1,
   dummy4 = 0, dummy5 = -20272, dummy6 = 32767, dummy7 = 14599488, dummy8 =
 0,
   dummy9 = 0x37a9211ff1, dummy10 = 0xdd2cc0, dummy11 = 5019543, dummy12 =
 0,
   dummy13 = 14552352, dummy14 = 0x37a921ea13}
         spell = <value optimized out>
         __PRETTY_FUNCTION__ = "gtkspell_new_attach"
 #10 0x00000000004b706d in pidgin_setup_gtkspell (textview=0xdec540)
     at gtkutils.c:932
         error = (GError *) 0x0
         __PRETTY_FUNCTION__ = "pidgin_setup_gtkspell"
 #11 0x00000000004b90ab in pidgin_create_imhtml (editable=1,
     imhtml_ret=0x6845528, toolbar_ret=0x6845570, sw_ret=0x0) at
 gtkutils.c:249
         frame = (GtkWidget *) 0x3d3c400
 ---Type <return> to continue, or q <return> to quit---
         imhtml = (GtkWidget *) 0xdec540
         sep = <value optimized out>
         sw = (GtkWidget *) 0x6840800
         toolbar = (GtkWidget *) 0x3d861d0
         vbox = (GtkWidget *) 0x3d3cdc0
 #12 0x0000000000457ded in setup_common_pane (gtkconv=0x68454d0)
     at gtkconv.c:4888
         vbox = (GtkWidget *) 0x3d8a0a0
         frame = (GtkWidget *) 0x683a650
         imhtml_sw = (GtkWidget *) 0x68408a0
         event_box = <value optimized out>
         rend = <value optimized out>
         path = <value optimized out>
         conv = (PurpleConversation *) 0xe15040
         buddy = <value optimized out>
         chat = 0
         imhtml_sw_hscroll = GTK_POLICY_AUTOMATIC
         buddyicon_size = <value optimized out>
 #13 0x0000000000460f15 in private_gtkconv_new (conv=0xe15040, hidden=0)
     at gtkconv.c:5161
         gtkconv = <value optimized out>
         conv_type = <value optimized out>
         pane = <value optimized out>
 ---Type <return> to continue, or q <return> to quit---
         tab_cont = <value optimized out>
         convnode = <value optimized out>
 #14 0x0000000000461e0f in pidgin_conv_new (conv=0x610faf1) at
 gtkconv.c:5267
 No locals.
 #15 0x0000003b05a5d670 in purple_conversation_new (type=109295312,
     account=0xa1f3f0, name=0xd106d0 "ivg2003 at hotmail.com")
     at conversation.c:379
         conv = (PurpleConversation *) 0xe15040
         gc = <value optimized out>
         __PRETTY_FUNCTION__ = "purple_conversation_new"
 #16 0x00000000004667d0 in pidgin_dialogs_im_with_user (account=0xa1f3f0,
     username=0xd106d0 "ivg2003 at hotmail.com") at gtkdialogs.c:754
         conv = (PurpleConversation *) 0x0
         __PRETTY_FUNCTION__ = "pidgin_dialogs_im_with_user"
 #17 0x000000000043b99f in gtk_blist_row_activated_cb (
     tv=<value optimized out>, path=0x681ff40, col=<value optimized out>,
     data=<value optimized out>) at gtkblist.c:1175
         buddy = (PurpleBuddy *) 0x345
         iter = {stamp = -206482702, user_data = 0x3ca08f0, user_data2 =
 0x0,
   user_data3 = 0x0}
         val = {g_type = 68, data = {{v_int = 13699152, v_uint = 13699152,
       v_long = 13699152, v_ulong = 13699152, v_int64 = 13699152,
       v_uint64 = 13699152, v_float = 1.91966007e-38,
 ---Type <return> to continue, or q <return> to quit---
       v_double = 6.7682803803574043e-317, v_pointer = 0xd10850}, {v_int =
 0,
       v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0,
       v_float = 0, v_double = 0, v_pointer = 0x0}}}
 #18 0x00000037a920b7dd in IA__g_closure_invoke (closure=0xdd1410,
     return_value=0x0, n_param_values=3, param_values=0xe695e0,
     invocation_hint=0x7fffffffb5d0) at gclosure.c:767
         marshal = (void (*)(GClosure *, GValue *, guint, const GValue *,
     gpointer, gpointer)) 0x37aa727a30 <_gtk_marshal_VOID__BOXED_OBJECT>
         marshal_data = (void *) 0x0
         __PRETTY_FUNCTION__ = "IA__g_closure_invoke"
 #19 0x00000037a92214bd in signal_emit_unlocked_R (node=0x96f3f0, detail=0,
     instance=0xdc2040, emission_return=0x0, instance_and_params=0xe695e0)
     at gsignal.c:3244
         tmp = <value optimized out>
         handler = (Handler *) 0xd310f0
         accumulator = (SignalAccumulator *) 0x0
         emission = {next = 0x7fffffffbad0, instance = 0xdc2040, ihint = {
     signal_id = 114, detail = 0, run_type = G_SIGNAL_RUN_FIRST},
   state = EMISSION_RUN, chain_type = 4}
         class_closure = (GClosure *) 0x9565d0
         handler_list = (Handler *) 0xd310f0
         return_accu = (GValue *) 0x0
         accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0,
 ---Type <return> to continue, or q <return> to quit---
       v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
       v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0,
       v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer =
 0x0}}}
         signal_id = 114
         max_sequential_handler_number = 4596
         return_value_altered = 0
 #20 0x00000037a9222b68 in IA__g_signal_emit_valist (instance=0xdc2040,
     signal_id=<value optimized out>, detail=0, var_args=0x7fffffffb7b0)
     at gsignal.c:2977
         signal_return_type = 4
         param_values = (GValue *) 0xe695f8
         node = (SignalNode *) 0x96f3f0
         i = 2
         n_params = 2
         __PRETTY_FUNCTION__ = "IA__g_signal_emit_valist"
 #21 0x00000037a9223093 in IA__g_signal_emit (instance=0x610faf1,
     signal_id=88407345, detail=837) at gsignal.c:3034
         var_args = {{gp_offset = 40, fp_offset = 48,
     overflow_arg_area = 0x7fffffffb890, reg_save_area = 0x7fffffffb7d0}}
 #22 0x00000037aa81b795 in gtk_tree_view_button_press (widget=0xdc2040,
     event=0x68fe550) at gtktreeview.c:2827
         new_y = <value optimized out>
         node = (GtkRBNode *) 0x3b4d270
 ---Type <return> to continue, or q <return> to quit---
         tree = (GtkRBTree *) 0x3cb21d0
         node_selected = <value optimized out>
         path = (GtkTreePath *) 0x6841560
         path_string = <value optimized out>
         depth = 2
         pre_val = 222
         focus_cell = <value optimized out>
         column_handled_click = 0
         rtl = <value optimized out>
         list = <value optimized out>
         column = <value optimized out>
         i = <value optimized out>
         background_area = {x = 0, y = 287, width = 274, height = 21}
         cell_area = {x = 1, y = 288, width = 272, height = 19}
         vertical_separator = 2
         horizontal_separator = 2
 #23 0x00000037aa729a08 in _gtk_marshal_BOOLEAN__BOXED (closure=0x94ed50,
     return_value=0x7fffffffbb20, n_param_values=<value optimized out>,
     param_values=0xe23230, invocation_hint=<value optimized out>,
     marshal_data=0x37aa81b0b0) at gtkmarshalers.c:84
         data1 = (void *) 0xdc2040
         data2 = (void *) 0x345
         v_return = <value optimized out>
 ---Type <return> to continue, or q <return> to quit---
         __PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED"
 #24 0x00000037a920b7dd in IA__g_closure_invoke (closure=0x94ed50,
     return_value=0x7fffffffbb20, n_param_values=2, param_values=0xe23230,
     invocation_hint=0x7fffffffbae0) at gclosure.c:767
         marshal = (void (*)(GClosure *, GValue *, guint, const GValue *,
     gpointer, gpointer)) 0x37a9209ce0 <g_type_class_meta_marshal>
         marshal_data = (void *) 0x158
         __PRETTY_FUNCTION__ = "IA__g_closure_invoke"
 #25 0x00000037a922119b in signal_emit_unlocked_R (node=0x950670, detail=0,
     instance=0xdc2040, emission_return=0x7fffffffbc60,
     instance_and_params=0xe23230) at gsignal.c:3282
         accumulator = (SignalAccumulator *) 0x950a40
         emission = {next = 0x0, instance = 0xdc2040, ihint = {signal_id =
 30,
     detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN,
   chain_type = 9896960}
         class_closure = (GClosure *) 0x94ed50
         handler_list = (Handler *) 0xd31180
         return_accu = (GValue *) 0x7fffffffbb20
         accu = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0,
       v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
       v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0,
       v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer =
 0x0}}}
         signal_id = 30
 ---Type <return> to continue, or q <return> to quit---
         max_sequential_handler_number = 4596
         return_value_altered = 1
 #26 0x00000037a92229ea in IA__g_signal_emit_valist (instance=0xdc2040,
     signal_id=<value optimized out>, detail=0, var_args=0x7fffffffbcc0)
     at gsignal.c:2987
         return_value = {g_type = 20, data = {{v_int = 0, v_uint = 0,
       v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0,
       v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0,
       v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0,
       v_pointer = 0x0}}}
         error = <value optimized out>
         signal_return_type = 20
         param_values = (GValue *) 0xe23248
         node = (SignalNode *) 0x950670
         i = 1
         n_params = 1
         __PRETTY_FUNCTION__ = "IA__g_signal_emit_valist"
 #27 0x00000037a9223093 in IA__g_signal_emit (instance=0x610faf1,
     signal_id=88407345, detail=837) at gsignal.c:3034
         var_args = {{gp_offset = 32, fp_offset = 48,
     overflow_arg_area = 0x7fffffffbda0, reg_save_area = 0x7fffffffbce0}}
 #28 0x00000037aa82c7de in gtk_widget_event_internal (widget=0xdc2040,
     event=0x68fe550) at gtkwidget.c:4745
 ---Type <return> to continue, or q <return> to quit---
         signal_num = <value optimized out>
         return_val = 0
 #29 0x00000037aa722373 in IA__gtk_propagate_event (widget=0xdc2040,
     event=0x68fe550) at gtkmain.c:2391
         tmp = (GtkWidget *) 0xc83160
         handled_event = 110093648
         __PRETTY_FUNCTION__ = "IA__gtk_propagate_event"
 #30 0x00000037aa723493 in IA__gtk_main_do_event (event=0x68fe550)
     at gtkmain.c:1596
         event_widget = (GtkWidget *) 0xdc2040
         grab_widget = (GtkWidget *) 0xdc2040
         window_group = (GtkWindowGroup *) 0xc83160
         rewritten_event = (GdkEvent *) 0x0
         tmp_list = <value optimized out>
         __PRETTY_FUNCTION__ = "IA__gtk_main_do_event"
 #31 0x00000037abc4deac in gdk_event_dispatch (source=<value optimized
 out>,
     callback=<value optimized out>, user_data=<value optimized out>)
     at gdkevents-x11.c:2365
         display = <value optimized out>
         event = <value optimized out>
 #32 0x00000037a8e3779b in g_main_dispatch () at gmain.c:2144
 No locals.
 #33 IA__g_main_context_dispatch (context=0x9267a0) at gmain.c:2697
 ---Type <return> to continue, or q <return> to quit---
 No locals.
 #34 0x00000037a8e3af6d in g_main_context_iterate (context=0x9267a0,
 block=1,
     dispatch=1, self=<value optimized out>) at gmain.c:2778
         max_priority = 0
         timeout = 0
         some_ready = 1
         nfds = 13
         allocated_nfds = <value optimized out>
         fds = (GPollFD *) 0x3ca86d0
         __PRETTY_FUNCTION__ = "g_main_context_iterate"
 #35 0x00000037a8e3b49d in IA__g_main_loop_run (loop=0x3b586b0) at
 gmain.c:2986
         self = (GThread *) 0x8f54f0
         __PRETTY_FUNCTION__ = "IA__g_main_loop_run"
 #36 0x00000037aa7238a7 in IA__gtk_main () at gtkmain.c:1200
         tmp_list = (GList *) 0x0
         functions = (GList *) 0x0
         init = (GtkInitFunction *) 0x90fa00
         loop = <value optimized out>
 #37 0x00000000004848db in main (argc=1, argv=0x7fffffffe3f8) at
 gtkmain.c:884
         opt_help = <value optimized out>
         opt_login = 0
         opt_nologin = 0
         opt_version = <value optimized out>
 ---Type <return> to continue, or q <return> to quit---
         opt_si = 1
         opt_config_dir_arg = 0x0
         opt_login_arg = 0x0
         opt_session_arg = 0x0
         accounts = <value optimized out>
         sigset = {__val = {82951, 0 <repeats 15 times>}}
         prev_sig_disp = (void (*)(int)) 0x1
         errmsg =
 "\000\000V��tt\000@ב���\177\000\000°ב���\177\000\000\000\000\000\000\000\000\000\000טy$«7\000\000\000\004\000\000\000\000\000\000\000�y‎ק�\177\000\000m�`::",
 '\0' <repeats 11 times>, "8\000\000\000:", '\0' <repeats 11 times>,
 "Fח`::\000\000\000@ב���\177\000\0000�`::\000\000\000\177ב���\177\000\000pב���\177\000\000hב���\177\000\000ר\n\202::\000\000\000\000\000\000\000Q",
 '\0' <repeats 11 times>,
 "°ב���\177\000\000��`::\000\000\000\000\020‎ק�\177\000\000\000\000\000\000\000\000\000\000טy$«7\000\000\000\004\000\000"...
         error = (GError *) 0x0
         opt = <value optimized out>
         gui_check = <value optimized out>
         debug_enabled = <value optimized out>
         migration_failed = <value optimized out>
         active_accounts = <value optimized out>
         long_options = {{name = 0x4cf202 "config", has_arg = 1, flag =
 0x0,
     val = 99}, {name = 0x4bc6d6 "debug", has_arg = 0, flag = 0x0, val =
 100}, {
     name = 0x4c0552 "help", has_arg = 0, flag = 0x0, val = 104}, {
 ---Type <return> to continue, or q <return> to quit---
     name = 0x4bc9a1 "login", has_arg = 2, flag = 0x0, val = 108}, {
     name = 0x4cb1b0 "multiple", has_arg = 0, flag = 0x0, val = 109}, {
     name = 0x4cb1b9 "nologin", has_arg = 0, flag = 0x0, val = 110}, {
     name = 0x4cb1c1 "nocrash", has_arg = 0, flag = 0x0, val = 120}, {
     name = 0x4cf1f8 "session", has_arg = 1, flag = 0x0, val = 115}, {
     name = 0x4c2372 "version", has_arg = 0, flag = 0x0, val = 118}, {
     name = 0x4cf20b "display", has_arg = 1, flag = 0x0, val = 68}, {
     name = 0x4cb1c9 "sync", has_arg = 0, flag = 0x0, val = 83}, {name =
 0x0,
     has_arg = 0, flag = 0x0, val = 0}}

 }}}
 (after pressing CTRL+C and writing "bt full")

-- 
Ticket URL: <http://developer.pidgin.im/ticket/8218#comment:9>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list