Treferwynd / transmission-remote-gtk

Automatically exported from code.google.com/p/transmission-remote-gtk
GNU General Public License v2.0
0 stars 0 forks source link

malloc/free crash in exec_cmd #174

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
using svn build:

Static tracepoint 1 at 0x7ffff50b9d29: file malloc.c, line 3709.
(gdb) bt
#0  __GI___libc_free (mem=0x48df894818408b48) at malloc.c:3709
#1  0x00007ffff58a8f69 in g_strfreev (str_array=0x7ffff5d76095) at 
/build/buildd/glib2.0-2.30.0/./glib/gstrfuncs.c:2569
#2  0x0000000000412b94 in exec_cmd_cb (w=<optimized out>, data=0x6c80e0) at 
trg-main-window.c:1904
#3  0x00007ffff5d4f0a4 in g_closure_invoke (closure=0x18e1410, 
return_value=0x0, n_param_values=1, param_values=0x7fffdd11f900, 
invocation_hint=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c:774
#4  0x00007ffff5d6102a in signal_emit_unlocked_R (node=<optimized out>, 
detail=0, instance=0x134dd20, emission_return=0x0, 
instance_and_params=0x7fffdd11f900)
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3272
#5  0x00007ffff5d6a6b1 in g_signal_emit_valist (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>, var_args=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3003
#6  0x00007ffff5d6a852 in g_signal_emit (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>) at 
/build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3060
#7  0x00007ffff7104fbe in IA__gtk_widget_activate (widget=0x134dd20) at 
/build/buildd/gtk+2.0-2.24.6/gtk/gtkwidget.c:5023
#8  0x00007ffff6fffafd in IA__gtk_menu_shell_activate_item 
(menu_shell=0x1349be0, menu_item=0x134dd20, force_deactivate=<optimized out>)
    at /build/buildd/gtk+2.0-2.24.6/gtk/gtkmenushell.c:1353
#9  0x00007ffff6fffe95 in gtk_menu_shell_button_release (widget=0x1349be0, 
event=<optimized out>) at /build/buildd/gtk+2.0-2.24.6/gtk/gtkmenushell.c:780
#10 0x00007ffff6feb828 in _gtk_marshal_BOOLEAN__BOXED (closure=0x6bc5c0, 
return_value=0x7fffffffdab0, n_param_values=<optimized out>, 
param_values=0x2bae0f0, 
    invocation_hint=<optimized out>, marshal_data=<optimized out>) at /build/buildd/gtk+2.0-2.24.6/gtk/gtkmarshalers.c:86
#11 0x00007ffff5d4f0a4 in g_closure_invoke (closure=0x6bc5c0, 
return_value=0x7fffffffdab0, n_param_values=2, param_values=0x2bae0f0, 
invocation_hint=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c:774
#12 0x00007ffff5d60e5f in signal_emit_unlocked_R (node=<optimized out>, 
detail=0, instance=0x1349be0, emission_return=0x7fffffffdc10, 
instance_and_params=0x2bae0f0)
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3310
#13 0x00007ffff5d6a483 in g_signal_emit_valist (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>, var_args=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3013
#14 0x00007ffff5d6a852 in g_signal_emit (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>) at 
/build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3060
#15 0x00007ffff7105dc1 in gtk_widget_event_internal (widget=0x1349be0, 
event=0x9364b0) at /build/buildd/gtk+2.0-2.24.6/gtk/gtkwidget.c:4992
#16 0x00007ffff6fe9a23 in IA__gtk_propagate_event (widget=0x1349be0, 
event=0x9364b0) at /build/buildd/gtk+2.0-2.24.6/gtk/gtkmain.c:2567
#17 0x00007ffff6fe9d83 in IA__gtk_main_do_event (event=0x9364b0) at 
/build/buildd/gtk+2.0-2.24.6/gtk/gtkmain.c:1757
#18 0x00007ffff6c5e09c in gdk_event_dispatch (source=<optimized out>, 
callback=<optimized out>, user_data=<optimized out>)
    at /build/buildd/gtk+2.0-2.24.6/gdk/x11/gdkevents-x11.c:2377
#19 0x00007ffff5889a5d in g_main_dispatch (context=0x688a60) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:2441
#20 g_main_context_dispatch (context=0x688a60) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:3011
#21 0x00007ffff588a258 in g_main_context_iterate (context=0x688a60, 
block=<optimized out>, dispatch=1, self=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3089
#22 0x00007ffff588a792 in g_main_loop_run (loop=0x6dedd0) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:3297
#23 0x00007ffff6fe8db7 in IA__gtk_main () at 
/build/buildd/gtk+2.0-2.24.6/gtk/gtkmain.c:1329
#24 0x000000000040e406 in main (argc=1, argv=0x7fffffffe0d8) at main.c:400

Original issue reported on code.google.com by reardo...@gmail.com on 9 Jan 2012 at 3:16

GoogleCodeExporter commented 9 years ago
Thanks. Taking a guess, I think the null terminated string list needed to be 
initialized to NULL. If the glib command parse function didn't set anything it 
would try strfreev on a random pointer.

Should be fixed now.

Original comment by a...@eth0.org.uk on 9 Jan 2012 at 10:16