[Pidgin] #14215: gnttree falls into an assertion loop on tab key in New IM dialog

Pidgin trac at pidgin.im
Mon May 30 16:45:43 EDT 2011


#14215: gnttree falls into an assertion loop on tab key in New IM dialog
---------------------------------+------------------------------------------
 Reporter:  elb                  |     Owner:  sadrul
     Type:  defect               |    Status:  new   
Component:  finch (gnt/ncurses)  |   Version:  2.7.11
 Keywords:                       |  
---------------------------------+------------------------------------------
 This bug was triggered via the following process:

  1. Ctrl+O on the buddy list to open the menu, select New IM
  2. Select a 'Name' of a buddy which is in the buddy list for an account
 which is ''not'' the default account in the 'Account' field
     (The account field will change to an account which has this buddy in
 its list)
  3. Press <Tab>
  4. Press <Tab> again to drop to the OK button

 At either step 3. or step 4. (not sure which), finch went into a 100% CPU-
 consuming assertion loop with the following backtrace:

 {{{
 #0  0x0088150b in _IO_vfprintf_internal (s=0xbfafc96c, format=
     0x74add5 "%s: assertion `%s' failed", ap=0xbfafcf4c "[7\262")
     at vfprintf.c:1614
 #1  0x00922e62 in *__GI___vasprintf_chk (result_ptr=0xbfafca7c, flags=1,
     format=0x74add5 "%s: assertion `%s' failed", args=0xbfafcf4c "[7\262")
     at vasprintf_chk.c:68
 #2  0x0073fabf in vasprintf (string=0xbfafca7c, format=
     0x74add5 "%s: assertion `%s' failed", args=0xbfafcf4c "[7\262")
     at /usr/include/bits/stdio2.h:199
 #3  IA__g_vasprintf (string=0xbfafca7c, format=
     0x74add5 "%s: assertion `%s' failed", args=0xbfafcf4c "[7\262")
     at /build/buildd/glib2.0-2.24.1/glib/gprintf.c:315
 #4  0x0071e506 in IA__g_strdup_vprintf (format=
     0x74add5 "%s: assertion `%s' failed", args=0xbfafcf4c "[7\262")
     at /build/buildd/glib2.0-2.24.1/glib/gstrfuncs.c:244
 #5  0x00705bc1 in IA__g_logv (log_domain=<value optimized out>,
     log_level=G_LOG_LEVEL_CRITICAL, format=
     0x74add5 "%s: assertion `%s' failed", args1=0xbfafcf4c "[7\262")
     at /build/buildd/glib2.0-2.24.1/glib/gmessages.c:516
 #6  0x00706056 in IA__g_log (log_domain=0xb22a3d "Gnt",
     log_level=G_LOG_LEVEL_CRITICAL, format=
     0x74add5 "%s: assertion `%s' failed")
     at /build/buildd/glib2.0-2.24.1/glib/gmessages.c:569
 #7  0x007062bb in IA__g_return_if_fail_warning (log_domain=0xb22a3d "Gnt",
     pretty_function=0xb2375b "gnt_tree_row_get_key", expression=
     0xb2358d "row && row->tree == tree")
     at /build/buildd/glib2.0-2.24.1/glib/gmessages.c:584
 #8  0x00b14133 in gnt_tree_row_get_key (tree=0xa7f61c0, row=0x0)
     at gnttree.c:1931
 #9  0x00b05c57 in gnt_combo_box_key_pressed (widget=0x9b1a5a8, text=
     0xa814de8 "\t") at gntcombobox.c:201
 #10 0x00afe994 in gnt_closure_marshal_BOOLEAN__STRING (closure=0x9b1b268,
     return_value=0xbfafd174, n_param_values=2, param_values=0x9c00ea0,
     invocation_hint=0xbfafd160, marshal_data=0xb05a50) at gntmarshal.c:120
 #11 0x00f968b9 in g_type_class_meta_marshal (closure=0x9b1b268,
 return_value=
     0xbfafd174, n_param_values=2, param_values=0x9c00ea0,
     invocation_hint=0xbfafd160, marshal_data=0x90)
     at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:878
 #12 0x00f98178 in IA__g_closure_invoke (closure=0x9b1b268, return_value=
     0xbfafd174, n_param_values=2, param_values=0x9c00ea0,
     invocation_hint=0xbfafd160)
     at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:767
 #13 0x00fac5e6 in signal_emit_unlocked_R (node=<value optimized out>,
     detail=<value optimized out>, instance=0x9b1a5a8, emission_return=
     0xbfafd2bc, instance_and_params=0x9c00ea0)
     at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3286
 #14 0x00fadc33 in IA__g_signal_emit_valist (instance=0x9b1a5a8,
 signal_id=26,
     detail=0,
     var_args=0xbfafd320 "<ӯ\277\341\374\311\thӯ\277\270%", <incomplete
 sequence \373>) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:2991
 #15 0x00fae256 in IA__g_signal_emit (instance=0x9b1a5a8, signal_id=26,
     detail=0) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038
 #16 0x00aff879 in gnt_widget_key_pressed (widget=0x9b1a5a8, keys=
     0x9b33438 "\t") at gntwidget.c:403
 #17 0x00b03482 in gnt_box_key_pressed (widget=0xa39cdf0, text=0x9b33438
 "\t")
     at gntbox.c:318
 #18 0x00afe994 in gnt_closure_marshal_BOOLEAN__STRING (closure=0x9b1b268,
     return_value=0xbfafd524, n_param_values=2, param_values=0x9c010a0,
     invocation_hint=0xbfafd510, marshal_data=0xb03420) at gntmarshal.c:120
 #19 0x00f968b9 in g_type_class_meta_marshal (closure=0x9b1b268,
 return_value=
     0xbfafd524, n_param_values=2, param_values=0x9c010a0,
     invocation_hint=0xbfafd510, marshal_data=0x90)
     at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:878
 #20 0x00f98252 in IA__g_closure_invoke (closure=0x9b1b268, return_value=
     0xbfafd524, n_param_values=2, param_values=0x9c010a0,
     invocation_hint=0xbfafd510)
     at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:767
 #21 0x00fac5e6 in signal_emit_unlocked_R (node=<value optimized out>,
     detail=<value optimized out>, instance=0xa39cdf0, emission_return=
     0xbfafd66c, instance_and_params=0x9c010a0)
     at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3286
 #22 0x00fadc33 in IA__g_signal_emit_valist (instance=0xa39cdf0,
 signal_id=26,
     detail=0, var_args=0xbfafd6d0
 "\354֯\277\340\333q\n\370֯\277\364_\262")
     at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:2991
 #23 0x00fae256 in IA__g_signal_emit (instance=0xa39cdf0, signal_id=26,
     detail=0) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038
 #24 0x00aff879 in gnt_widget_key_pressed (widget=0xa39cdf0, keys=
     0xa71dbe0 "\t") at gntwidget.c:403
 #25 0x00b1fafa in gnt_wm_process_input (wm=0x9aad420, keys=
     0xb2375b "gnt_tree_row_get_key") at gntwm.c:2065
 #26 0x00b217d9 in io_invoke (source=0xa4e6f30, cond=G_IO_IN, null=0x0)
     at gntmain.c:292
 #27 0x0073fefb in g_io_unix_dispatch (source=0xa9052d8,
     callback=0xb21660 <io_invoke>, user_data=0x0)
     at /build/buildd/glib2.0-2.24.1/glib/giounix.c:162
 #28 0x006fb5e5 in g_main_dispatch (context=0x99f0380)
     at /build/buildd/glib2.0-2.24.1/glib/gmain.c:1960
 #29 IA__g_main_context_dispatch (context=0x99f0380)
     at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2513
 #30 0x006ff2d8 in g_main_context_iterate (context=0x99f0380,
     block=<value optimized out>, dispatch=1, self=0x99e5008)
     at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2591
 #31 0x006ff817 in IA__g_main_loop_run (loop=0x9b6ef38)
     at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2799
 #32 0x00b22015 in gnt_main () at gntmain.c:521
 #33 0x0806a983 in main (argc=1, argv=0xbfafdc54) at finch.c:440
 }}}

 The full backtrace is enormous, so I've elided it.  I have saved a copy if
 anyone is interested.

 Finch 2.7.11 (266042fff48838ac6672bcde8cf02babb5d5bae0)

-- 
Ticket URL: <http://developer.pidgin.im/ticket/14215>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list