Is there a way to splice this bug into two bugs, one for the SIGSEGV
at boot, one for SIGILL at boot? It'll get pretty confusing
otherwise...


I see the following symptoms now:
1) When audacious starts and ~/.config/audacious/playlist.xspf exists,
audacious segfaults. GDB output attached as audacious-start.log
2) When I try to add a file in audacious that contains spaces in its
path, audacious segfaults. GDB output attached as audacious-add.log
3) When audacious exits, audacious segfaults. GDB output attached as
audacious-stop.log

Note regarding 1 and 2:
I can start audacious when I remove my playlist file. At that point, I
can also add files to the (now empty) playlist. I noticed however that
audacious still segfaults when I add certain items to the playlist.
There doesn't seem to be an obvious pattern. The crashes seem to be
unrelated to file/directory permissions, spaces or other weird
characters in path, or the hierarchies the files are in (I copied a
file from a hierarchy of files that never seem to fail into a
hierarchy that always seems to fail, and adding the copy to the
playlist didn't fail).

Main problems seem to be happening in vfs.c at line 159, and
ui_fileinfopopup.c at line 466.

vfs.c, line 159 (function vfs_fread):
    return file->base->vfs_fread_impl(ptr, size, nmemb, file);
The function only checks wether file is not NULL, but I think
file->base may be invalid at this point. Investigation of the struct
using GDB is attached in audacious-vfs.log.

Note how the octets of the addresses in the struct are all in the
ASCII plane, spelling "double free or corruption (f". How did that end
up in there?

ui_fileinfopopup.c, line 466 (function fileinfopopup_hide):
    if (GTK_WIDGET_VISIBLE(filepopup_win))
This pointer filepopup_win is never checked for nullity. I don't know
how exactly this problem works -- it seems that fileinfopopup_hide is
called as a result of gp->cleanup() (from plugin_system_cleanup's
frame), but I can't exactly see how. It does seem that gp->handle is 0
though.
(gdb) run
Starting program: /usr/bin/audacious 
[Thread debugging using libthread_db enabled]
[New Thread 0x2b791399c660 (LWP 10036)]
[New Thread 0x40800950 (LWP 10039)]
amidi-plug(amidi-plug.c:amidiplug_init:97): init, read configuration
amidi-plug(i_backend.c:i_backend_load:107): loading backend '/usr/lib/audacious/Input/amidi-plug/ap-alsa.so'
amidi-plug(i_backend.c:i_backend_load:145): backend /usr/lib/audacious/Input/amidi-plug/ap-alsa.so (name 'alsa') successfully loaded
[New Thread 0x41001950 (LWP 10040)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x2b791399c660 (LWP 10036)]
0x0000000000463789 in vfs_fread (ptr=0x7fff9dfab2be, size=2, nmemb=1, file=0x2b7910525f08)
    at vfs.c:159
159     vfs.c: No such file or directory.
        in vfs.c
(gdb) bt full
#0  0x0000000000463789 in vfs_fread (ptr=0x7fff9dfab2be, size=2, nmemb=1, 
    file=0x2b7910525f08) at vfs.c:159
No locals.
#1  0x00000000004644bf in vfs_fget_le16 (value=0xa3fd60, stream=0x2b7910525f08)
    at vfs_common.c:213
        tmp = <value optimized out>
#2  0x00002aaab9e6c10b in ?? () from /usr/lib/audacious/Container/xspf.so
No symbol table info available.
#3  0x000000000041f1ab in playlist_load_ins (playlist=0xa3bff0, 
    filename=0x702ce0 "/home/tinctorius/.config/audacious/playlist.xspf", pos=-1)
    at playlist.c:1753
        plc = (PlaylistContainer *) 0x2aaaba06cca0
        __PRETTY_FUNCTION__ = "playlist_load_ins"
#4  0x000000000041f220 in playlist_load (playlist=0xa3bff0, 
    filename=0x702ce0 "/home/tinctorius/.config/audacious/playlist.xspf") at playlist.c:1648
        ret = <value optimized out>
	__PRETTY_FUNCTION__ = "playlist_load"
#5  0x00000000004198c7 in main (argc=1, argv=0x7fff9dfab4f8) at main.c:617
No locals.
#6  0x00002b79104331c4 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#7  0x0000000000413f69 in _start ()
No symbol table info available.
(gdb) info registers
rax            0x6f6974707572726f	8028075837120213615
rbx            0xa3fd60	10747232
rcx            0x2b7910525f08	47798964870920
rdx            0x1	1
rsi            0x2	2
rdi            0x7fff9dfab2be	140735843840702
rbp            0xa456a0	0xa456a0
rsp            0x7fff9dfab2a8	0x7fff9dfab2a8
r8             0x9b7e20	10190368
r9             0x1	1
r10            0x1	1
r11            0x2b7910203be0	47798961585120
r12            0xa45ae0	10771168
r13            0xa45be0	10771424
r14            0x0	0
r15            0xa3fd60	10747232
rip            0x463789	0x463789 <vfs_fread+9>
eflags         0x10202	[ IF RF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
fctrl          0x37f	895
fstat          0x0	0
ftag           0xffff	65535
fiseg          0x0	0
fioff          0x0	0
foseg          0x0	0
fooff          0x0	0
fop            0x0	0
mxcsr          0x1fa0	[ PE IM DM ZM OM UM PM ]

(gdb) run
Starting program: /usr/bin/audacious 
[Thread debugging using libthread_db enabled]
[New Thread 0x2ac254b13660 (LWP 10302)]
[New Thread 0x40800950 (LWP 10305)]
amidi-plug(amidi-plug.c:amidiplug_init:97): init, read configuration
amidi-plug(i_backend.c:i_backend_load:107): loading backend '/usr/lib/audacious/Input/amidi-plug/ap-alsa.so'
amidi-plug(i_backend.c:i_backend_load:145): backend /usr/lib/audacious/Input/amidi-plug/ap-alsa.so (name 'alsa') successfully loaded
[New Thread 0x41001950 (LWP 10306)]
I/O warning : failed to load external entity "/home/tinctorius/.config/audacious/playlist.xspf"
[New Thread 0x41802950 (LWP 10307)]
[New Thread 0x42003950 (LWP 10308)]
[New Thread 0x42804950 (LWP 10309)]
[Thread 0x42003950 (LWP 10308) exited]
[Thread 0x42804950 (LWP 10309) exited]
[New Thread 0x42804950 (LWP 10310)]
[New Thread 0x42003950 (LWP 10311)]
[Thread 0x42003950 (LWP 10311) exited]
[Thread 0x42804950 (LWP 10310) exited]
[New Thread 0x42804950 (LWP 10312)]
[Thread 0x42804950 (LWP 10312) exited]
[New Thread 0x42804950 (LWP 10313)]
[Thread 0x42804950 (LWP 10313) exited]
[New Thread 0x42804950 (LWP 10314)]
[Thread 0x42804950 (LWP 10314) exited]
[New Thread 0x42804950 (LWP 10315)]
[New Thread 0x42003950 (LWP 10316)]
[Thread 0x42003950 (LWP 10316) exited]
[Thread 0x42804950 (LWP 10315) exited]
[New Thread 0x42804950 (LWP 10317)]
[Thread 0x42804950 (LWP 10317) exited]
[New Thread 0x42804950 (LWP 10318)]
[New Thread 0x42003950 (LWP 10319)]
[Thread 0x42804950 (LWP 10318) exited]
[Thread 0x42003950 (LWP 10319) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x2ac254b13660 (LWP 10302)]
0x0000000000463789 in vfs_fread (ptr=0x7fff5ce3005e, size=2, nmemb=1, file=0x2aaaabd059ac)
    at vfs.c:159
159	vfs.c: No such file or directory.
	in vfs.c
(gdb) bt full
#0  0x0000000000463789 in vfs_fread (ptr=0x7fff5ce3005e, size=2, nmemb=1, 
    file=0x2aaaabd059ac) at vfs.c:159
No locals.
#1  0x00000000004644bf in vfs_fget_le16 (value=0x12c06e0, stream=0x2aaaabd059ac)
    at vfs_common.c:213
	tmp = <value optimized out>
#2  0x00002aaaabd04472 in ?? () from /usr/lib/audacious/Input/madplug.so
No symbol table info available.
#3  0x000000000041d2c4 in playlist_entry_get_info (entry=0x2aaabb805010) at playlist.c:254
	tuple = (Tuple *) 0x2aaabb805010
	pr = (ProbeResult *) 0x0
	modtime = 1167384954
	formatter = <value optimized out>
	__PRETTY_FUNCTION__ = "playlist_entry_get_info"
#4  0x00000000004214fc in playlist_entry_new (
    filename=0x12cff10 "file:///mnt/media/import/audio/Metallica/Metallica%20-%20One.mp3", 
    title=0x0, length=-1, dec=0x2aaaabf077e0) at playlist.c:180
	entry = (PlaylistEntry *) 0x2aaabb805010
#5  0x00000000004217a6 in __playlist_ins_file (playlist=0xa42e40, 
    filename=0x12aece0 "file:///mnt/media/import/audio/Metallica/Metallica%20-%20One.mp3", 
    pos=-1, tuple=0x0, title=0x0, len=-1, dec=0x2aaaabf077e0) at playlist.c:678
	formatter = (const gchar *) 0x2aaaabf077e0 ""
	filename_entry = (
    gchar *) 0x12cff10 "file:///mnt/media/import/audio/Metallica/Metallica%20-%20One.mp3"
	entry = (PlaylistEntry *) 0xa42e40
	parent_tuple = (Tuple *) 0x0
	nsubtunes = 0
	subtune = 0
	__PRETTY_FUNCTION__ = "__playlist_ins_file"
#6  0x0000000000421c9f in playlist_ins (playlist=0xa42e40, 
    filename=0x12aece0 "file:///mnt/media/import/audio/Metallica/Metallica%20-%20One.mp3", 
    pos=-1) at playlist.c:771
	buf = "X6\000\000\000\000\000\000\220\233bF", '\0' <repeats 12 times>, "z�\224E", '\0' <repeats 12 times>, "��\214Q�*\000\000��3\001\000\000\000\000\004\000\000\000\000\000\000"
	p = <value optimized out>
	r = <value optimized out>
	file = <value optimized out>
	pr = (ProbeResult *) 0x10602d0
	dec = (InputPlugin *) 0x2aaaabf077e0
	tuple = (Tuple *) 0x0
	http_flag = 0
	__PRETTY_FUNCTION__ = "playlist_ins"
#7  0x0000000000432c69 in action_button_cb (widget=<value optimized out>, 
---Type <return> to continue, or q <return> to quit---
    data=<value optimized out>) at ui_fileopener.c:46
	play_button = 0
	files = (GSList *) 0x12eba30
#8  0x00002ac2504c3b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#9  0x00002ac2504d75ec in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#10 0x00002ac2504d9005 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#11 0x00002ac2504d92c8 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#12 0x00002ac2504c3b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#13 0x00002ac2504d75ec in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#14 0x00002ac2504d9005 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#15 0x00002ac2504d92c8 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#16 0x00002ac24efd9641 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#17 0x00002ac2504c3b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#18 0x00002ac2504d75ec in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#19 0x00002ac2504d9005 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#20 0x00002ac2504d93b3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#21 0x00002ac24f12de72 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#22 0x00002ac24f0394df in ?? () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#23 0x00002ac2504c3b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#24 0x00002ac2504d79d8 in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#25 0x00002ac2504d8d16 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#26 0x00002ac2504d93b3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#27 0x00002ac24f1408f5 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#28 0x00002ac24f0327f2 in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#29 0x00002ac24f033795 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#30 0x00002ac24f4f114c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#31 0x00002ac24e85a0f2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#32 0x00002ac24e85d396 in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#33 0x00002ac24e85d657 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#34 0x00002ac24f033b63 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#35 0x00000000004199e2 in main (argc=1, argv=0x7fff5ce32378) at main.c:795
No locals.
#36 0x00002ac2515aa1c4 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#37 0x0000000000413f69 in _start ()
No symbol table info available.
(gdb) info registers
rax            0x504d28206f696475	5786325216014197877
rbx            0x12c06e0	19662560
rcx            0x2aaaabd059ac	46912515365292
rdx            0x1	1
rsi            0x2	2
rdi            0x7fff5ce3005e	140734751768670
rbp            0x1336fd0	0x1336fd0
rsp            0x7fff5ce30048	0x7fff5ce30048
r8             0x52	82
r9             0x1	1
r10            0x1	1
r11            0x2ac2515fccb0	47014077254832
r12            0x2aaabf7dfdf0	46912845512176
r13            0x0	0
r14            0x12bac00	19639296
r15            0x12c06e0	19662560
rip            0x463789	0x463789 <vfs_fread+9>
eflags         0x10206	[ PF IF RF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
fctrl          0x37f	895
fstat          0x0	0
ftag           0xffff	65535
fiseg          0x0	0
fioff          0x0	0
foseg          0x0	0
fooff          0x0	0
fop            0x0	0
mxcsr          0x1fa0	[ PE IM DM ZM OM UM PM ]
(gdb) 

(gdb) run
Starting program: /usr/bin/audacious 
[Thread debugging using libthread_db enabled]
[New Thread 0x2b8856920660 (LWP 10140)]
[New Thread 0x40800950 (LWP 10143)]
amidi-plug(amidi-plug.c:amidiplug_init:97): init, read configuration
amidi-plug(i_backend.c:i_backend_load:107): loading backend '/usr/lib/audacious/Input/amidi-plug/ap-alsa.so'
amidi-plug(i_backend.c:i_backend_load:145): backend /usr/lib/audacious/Input/amidi-plug/ap-alsa.so (name 'alsa') successfully loaded
[New Thread 0x41001950 (LWP 10144)]
[New Thread 0x41802950 (LWP 10145)]
[Thread 0x41802950 (LWP 10145) exited]
amidi-plug(i_backend.c:i_backend_unload:164): unloading backend 'alsa'
amidi-plug(i_backend.c:i_backend_unload:167): backend 'alsa' unloaded
[Thread 0x41001950 (LWP 10144) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x2b8856920660 (LWP 10140)]
0x00000000004311d9 in fileinfopopup_hide (filepopup_win=0x0, unused=<value optimized out>)
    at ui_fileinfopopup.c:466
466	ui_fileinfopopup.c: No such file or directory.
	in ui_fileinfopopup.c
(gdb) bt full
#0  0x00000000004311d9 in fileinfopopup_hide (filepopup_win=0x0, 
    unused=<value optimized out>) at ui_fileinfopopup.c:466
No locals.
#1  0x00000000004230a2 in plugin_system_cleanup () at pluginenum.c:1053
	ip = <value optimized out>
	op = <value optimized out>
	ep = <value optimized out>
	gp = (GeneralPlugin *) 0x2aaab3d85780
	vp = <value optimized out>
	lp = <value optimized out>
	dp = <value optimized out>
	node = (GList *) 0x984360
	hlist_node = <value optimized out>
#2  0x0000000000419251 in aud_quit () at main.c:647
	playlists = <value optimized out>
#3  0x00002b88522d0b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#4  0x00002b88522e45ec in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#5  0x00002b88522e6005 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#6  0x00002b88522e63b3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#7  0x000000000045213e in button_released (button=0xa4eab0) at ui_skinned_button.c:464
No locals.
#8  0x00002b88522d0b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#9  0x00002b88522e42b6 in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#10 0x00002b88522e6005 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#11 0x00002b88522e63b3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#12 0x00000000004521d2 in ui_skinned_button_button_release (widget=<value optimized out>, 
    event=<value optimized out>) at ui_skinned_button.c:458
	button = <value optimized out>
#13 0x00002b8850e464df in ?? () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#14 0x00002b88522d0b5f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#15 0x00002b88522e49d8 in ?? () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#16 0x00002b88522e5d16 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#17 0x00002b88522e63b3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
No symbol table info available.
#18 0x00002b8850f4d8f5 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#19 0x00002b8850e3f7f2 in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#20 0x00002b8850e40795 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#21 0x00002b88512fe14c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
No symbol table info available.
#22 0x00002b88506670f2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#23 0x00002b885066a396 in ?? () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#24 0x00002b885066a657 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
No symbol table info available.
#25 0x00002b8850e40b63 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#26 0x00000000004199e2 in main (argc=1, argv=0x7fff5b026568) at main.c:795
No locals.
#27 0x00002b88533b71c4 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#28 0x0000000000413f69 in _start ()
No symbol table info available.
(gdb) info registers
rax            0x0	0
rbx            0x2aaab3d85780	46912650106752
rcx            0x6f0710	7276304
rdx            0x0	0
rsi            0x735d20	7560480
rdi            0x0	0
rbp            0x0	0x0
rsp            0x7fff5b024db0	0x7fff5b024db0
r8             0x711568	7411048
r9             0x1	1
r10            0x1	1
r11            0x4311c0	4395456
r12            0x1	1
r13            0x0	0
r14            0x412f40	4271936
r15            0x7fff5b025000	140734720266240
rip            0x4311d9	0x4311d9 <fileinfopopup_hide+25>
eflags         0x10202	[ IF RF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
fctrl          0x37f	895
fstat          0x0	0
ftag           0xffff	65535
fiseg          0x0	0
fioff          0x0	0
foseg          0x0	0
fooff          0x0	0
fop            0x0	0
mxcsr          0x1fa0	[ PE IM DM ZM OM UM PM ]
(gdb) 


Reply via email to