rhythmbox crashed with SIGSEGV in rhythmdb_entry_lookup_by_location_refstring()
Submitted by Pedro Villavicencio
Link to original bug (#648202)
Description
this bug report has been filed here:
https://bugs.launchpad.net/ubuntu/+source/rhythmbox/+bug/756994
"I try and hook up my mp3 player with Rhythmbox and it freezes then crashes, not allowing me to do a thing."
rhythmbox 0.13.3-0ubuntu5
".
Thread 5 (Thread 9395):
#0 0x00700416 in __kernel_vsyscall ()
No symbol table info available.
#1 0x00ed84ab in write () at ../sysdeps/unix/syscall-template.S:82
No locals.
#2 0x0113ed56 in write_string (fd=2, string=0xb5d97378 "\n(rhythmbox:9395): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'\n") at /build/buildd/glib2.0-2.28.5/./glib/gmessages.c:140
No locals.
#3 0x0113f110 in g_log_default_handler (log_domain=0x61d6ae "GLib-GObject", log_level=G_LOG_LEVEL_WARNING, message=0xb5d9ee00 "invalid unclassed pointer in cast to `GObject'", unused_data=0x0) at /build/buildd/glib2.0-2.28.5/./glib/gmessages.c:998
level_prefix = "WARNING **\000\020\000\320\265\364\277\034\001\020\000\000\000\020\000\000\000x\254\225\277ry\025\001l\254\225\277\340Gb\000<\261\225\277"
string = 0xb5d97378 "\n(rhythmbox:9395): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'\n"
gstring = 0x94f57b0
fd = 2
#4 0x0113fb0f in g_logv (log_domain=0x61d6ae "GLib-GObject", log_level=<value optimized out>, format=0x6247e0 "invalid unclassed pointer in cast to `%s'", args1=0xbf95b13c "\263\326a") at /build/buildd/glib2.0-2.28.5/./glib/gmessages.c:527
msg = <value optimized out>
args2 = 0xbf95b13c "\263\326a"
depth = 1
domain = 0x0
data = 0x0
log_func = 0x113eec0 <g_log_default_handler>
domain_fatal_mask = 5
masquerade_fatal = 0
test_level = G_LOG_LEVEL_WARNING
was_fatal = 0
was_recursion = 0
i = <value optimized out>
#5 0x0113ff62 in g_log (log_domain=0x61d6ae "GLib-GObject", log_level=G_LOG_LEVEL_WARNING, format=0x6247e0 "invalid unclassed pointer in cast to `%s'") at /build/buildd/glib2.0-2.28.5/./glib/gmessages.c:577
args = 0xbf95b13c "\263\326a"
#6 0x00615144 in g_type_check_instance_cast (type_instance=0x8c40068, iface_type=80) at /build/buildd/glib2.0-2.28.5/./gobject/gtype.c:4011
No locals.
#7 0x0040a269 in rhythmdb_emit_entry_signals_idle (db=0x8c40068) at rhythmdb.c:1369
added_entries = 0xb5d9b680
deleted_entries = 0x0
changed_entries = 0x0
l = 0xb5d92890
iter = {dummy1 = 0x11cbff4, dummy2 = 0xed3337, dummy3 = 0xed4850, dummy4 = 15550329, dummy5 = 26849134, dummy6 = 0x0}
entry = 0xb5d96268
entry_changes = 0xbf95b218
#8 0x01132311 in g_idle_dispatch (source=0xb5d92748, callback=0x40a080 <rhythmdb_emit_entry_signals_idle>, user_data=0x8c40068) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:4545
No locals.
#9 0x01136aa8 in g_main_dispatch (context=0x8bbb7c0) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:2440
dispatch = 0x11322f0 <g_idle_dispatch>
was_in_call = 0
user_data = 0x8c40068
callback = 0x40a080 <rhythmdb_emit_entry_signals_idle>
cb_funcs = 0x11cc33c
cb_data = 0xb5d92780
current_source_link = {data = 0xb5d92748, next = 0x0}
need_destroy = <value optimized out>
source = 0xb5d92748
current = 0x8c19fa8
i = <value optimized out>
#10 g_main_context_dispatch (context=0x8bbb7c0) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:3013
No locals.
#11 0x01137270 in g_main_context_iterate (context=0x8bbb7c0, block=18118688, dispatch=1, self=<value optimized out>) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:3091
max_priority = 200
timeout = 0
some_ready = 1
nfds = <value optimized out>
allocated_nfds = <value optimized out>
fds = 0x92d4c40
#12 0x0113792b in g_main_loop_run (loop=0x93949a0) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:3299
__PRETTY_FUNCTION__ = "g_main_loop_run"
#13 0x009c1bd9 in IA__gtk_main () at /build/buildd/gtk+2.0-2.24.4/gtk/gtkmain.c:1257
tmp_list = <value optimized out>
functions = 0x0
init = <value optimized out>
loop = 0x93949a0
#14 0x0804c255 in main (argc=1, argv=0xbf95b4f4) at main.c:336
_save = 0x8dd3990
session_bus = <value optimized out>
error = 0x0
rb_shell = 0x8c0f070
activated = 0
autostarted = <value optimized out>
accel_map_file = 0x8c008a0 "/home/matticus/.gnome2/accels/rhythmbox"
desktop_file_path = <value optimized out>
context = <value optimized out>
options = {{long_name = 0x804cb6b "debug", short_name = 100 'd', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x804f1d4, description = 0x804cb71 "Enable debug output", arg_description = 0x0}, {long_name = 0x804cb85 "debug-match", short_name = 68 'D', flags = 0, arg = G_OPTION_ARG_STRING, arg_data = 0x804f1d8, description = 0x804cd3c "Enable debug output matching a specified string", arg_description = 0x0}, {long_name = 0x804cb91 "no-update", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x804f1f0, description = 0x804cd6c "Do not update the library with file changes", arg_description = 0x0}, {long_name = 0x804cb9b "no-registration", short_name = 110 'n', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x804f1dc, description = 0x804cbab "Do not register the shell", arg_description = 0x0}, {long_name = 0x804cbc5 "dry-run", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x804f1ec, description = 0x804cd98 "Don't save any data permanently (implies --no-registration)", arg_description = 0x0}, {long_name = 0x804cbcd "rhythmdb-file", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_STRING, arg_data = 0x804f1e8, description = 0x804cbdb "Path for database file to use", arg_description = 0x0}, {long_name = 0x804cbf9 "playlists-file", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_STRING, arg_data = 0x804f1e4, description = 0x804cdd4 "Path for playlists file to use", arg_description = 0x0}, {long_name = 0x804cb38 "quit", short_name = 113 'q', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x804f1e0, description = 0x804cc08 "Quit Rhythmbox", arg_description = 0x0}, {long_name = 0x804c969 "", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_STRING_ARRAY, arg_data = 0x804f1f4, description = 0x0, arg_description = 0x804cc17 "[URI...]"}, {long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}}
__FUNCTION__ = "main"
.
Thread 4 (Thread 9408):
#0 0x00700416 in __kernel_vsyscall ()
No symbol table info available.
#1 0x00ed548c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
No locals.
#2 0x0110a3e9 in g_async_queue_pop_intern_unlocked (queue=0x8c1c8a8, try=0, end_time=0x0) at /build/buildd/glib2.0-2.28.5/./glib/gasyncqueue.c:416
retval = <value optimized out>
__PRETTY_FUNCTION__ = "g_async_queue_pop_intern_unlocked"
#3 0x0110acbe in g_async_queue_pop (queue=0x8c1c8a8) at /build/buildd/glib2.0-2.28.5/./glib/gasyncqueue.c:456
retval = <value optimized out>
__PRETTY_FUNCTION__ = "g_async_queue_pop"
#4 0x00405a67 in action_thread_main (db=0x8c40068) at rhythmdb.c:2842
action = <value optimized out>
result = <value optimized out>
__FUNCTION__ = "action_thread_main"
__PRETTY_FUNCTION__ = "action_thread_main"
#5 0x011602df in g_thread_create_proxy (data=0x92e3050) at /build/buildd/glib2.0-2.28.5/./glib/gthread.c:1897
thread = 0x92e3050
__PRETTY_FUNCTION__ = "g_thread_create_proxy"
#6 0x00ed0e99 in start_thread (arg=0xb228fb70) at pthread_create.c:304
pd = 0xb228fb70
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {15601652, 0, 4001536, -1305939272, -858781274, 1194293955}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
pagesize_m1 = <value optimized out>
sp = <value optimized out>
freesize = <value optimized out>
__PRETTY_FUNCTION__ = "start_thread"
#7 0x0274073e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.
.
Thread 3 (Thread 9398):
#0 0x00700416 in __kernel_vsyscall ()
No symbol table info available.
#1 0x00ed5834 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_timedwait.S:236
No locals.
#2 0x00238f0e in g_cond_timed_wait_posix_impl (cond=0xb5d03d10, entered_mutex=0x8aa6e38, abs_time=0xb33f7148) at /build/buildd/glib2.0-2.28.5/./gthread/gthread-posix.c:242
result = <value optimized out>
end_time = {tv_sec = 1302482360, tv_nsec = 7300000}
timed_out = <value optimized out>
__PRETTY_FUNCTION__ = "g_cond_timed_wait_posix_impl"
#3 0x0110a42c in g_async_queue_pop_intern_unlocked (queue=0x8aa6e10, try=0, end_time=0xb33f7148) at /build/buildd/glib2.0-2.28.5/./glib/gasyncqueue.c:423
retval = <value optimized out>
__PRETTY_FUNCTION__ = "g_async_queue_pop_intern_unlocked"
#4 0x0110af6d in g_async_queue_timed_pop (queue=0x8aa6e10, end_time=0xb33f7148) at /build/buildd/glib2.0-2.28.5/./glib/gasyncqueue.c:549
retval = <value optimized out>
__PRETTY_FUNCTION__ = "g_async_queue_timed_pop"
#5 0x01162980 in g_thread_pool_wait_for_new_pool (data=0x8c23500) at /build/buildd/glib2.0-2.28.5/./glib/gthreadpool.c:175
end_time = {tv_sec = 1302482360, tv_usec = 7300}
pool = <value optimized out>
local_max_idle_time = 15000
local_wakeup_thread_serial = <value optimized out>
local_max_unused_threads = 2
last_wakeup_thread_serial = 0
have_relayed_thread_marker = 0
#6 g_thread_pool_thread_proxy (data=0x8c23500) at /build/buildd/glib2.0-2.28.5/./glib/gthreadpool.c:378
free_pool = <value optimized out>
task = 0xfffffdfc
pool = <value optimized out>
#7 0x011602df in g_thread_create_proxy (data=0x8d45c50) at /build/buildd/glib2.0-2.28.5/./glib/gthread.c:1897
thread = 0x8d45c50
__PRETTY_FUNCTION__ = "g_thread_create_proxy"
#8 0x00ed0e99 in start_thread (arg=0xb33f7b70) at pthread_create.c:304
pd = 0xb33f7b70
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {15601652, 0, 4001536, -1287687496, -472905308, 1194293955}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
pagesize_m1 = <value optimized out>
sp = <value optimized out>
freesize = <value optimized out>
__PRETTY_FUNCTION__ = "start_thread"
#9 0x0274073e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.
.
Thread 2 (Thread 9397):
#0 0x00700416 in __kernel_vsyscall ()
No symbol table info available.
#1 0x02731f76 in __poll (fds=0x8c16b98, nfds=3, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
resultvar = <value optimized out>
oldtype = -516
result = <value optimized out>
#2 0x0114784b in g_poll (fds=0x8c16b98, nfds=3, timeout=-1) at /build/buildd/glib2.0-2.28.5/./glib/gpoll.c:132
No locals.
#3 0x011371af in g_main_context_poll (context=0x8c16150, block=18118688, dispatch=1, self=<value optimized out>) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:3404
poll_func = 0x1147820 <g_poll>
#4 g_main_context_iterate (context=0x8c16150, block=18118688, dispatch=1, self=<value optimized out>) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:3086
max_priority = 2147483647
timeout = -1
some_ready = <value optimized out>
nfds = 3
allocated_nfds = <value optimized out>
fds = 0x8c16b98
#5 0x0113792b in g_main_loop_run (loop=0x8c16140) at /build/buildd/glib2.0-2.28.5/./glib/gmain.c:3299
__PRETTY_FUNCTION__ = "g_main_loop_run"
#6 0x00800434 in gdbus_shared_thread_func (data=0x0) at /build/buildd/glib2.0-2.28.5/./gio/gdbusprivate.c:276
No locals.
#7 0x011602df in g_thread_create_proxy (data=0x8c161e0) at /build/buildd/glib2.0-2.28.5/./glib/gthread.c:1897
thread = 0x8c161e0
__PRETTY_FUNCTION__ = "g_thread_create_proxy"
#8 0x00ed0e99 in start_thread (arg=0xb66e5b70) at pthread_create.c:304
pd = 0xb66e5b70
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {15601652, 0, 4001536, -1234283848, 1099958702, 1194293955}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
pagesize_m1 = <value optimized out>
sp = <value optimized out>
freesize = <value optimized out>
__PRETTY_FUNCTION__ = "start_thread"
#9 0x0274073e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.
.
Thread 1 (Thread 9407):
#0 0x00403bc5 in rhythmdb_entry_lookup_by_location_refstring (db=0x8c40068, uri=0xb5d9a728) at rhythmdb.c:3845
klass = 0x0
#1 0x00403c04 in rhythmdb_entry_lookup_by_location (db=0x8c40068, uri=0x8c56730 "xrbmtp://120/07 My Angel (Never Leave You).mp3") at rhythmdb.c:3824
rs = <value optimized out>
#2 0x00403e21 in rhythmdb_entry_new (db=0x8c40068, type=0x93dc848, uri=0x8c56730 "xrbmtp://120/07 My Angel (Never Leave You).mp3") at rhythmdb.c:1769
ret = <value optimized out>
klass = 0x0
__FUNCTION__ = "rhythmdb_entry_new"
#3 0x01a14ef3 in add_mtp_track_to_db (source=<value optimized out>, db=0x8c40068, track=0xb5d8cb18) at rb-mtp-source.c:672
entry = 0x0
entry_type = 0x93dc848
priv = 0x8cdbea8
name = 0x8c56730 "xrbmtp://120/07 My Angel (Never Leave You).mp3"
__FUNCTION__ = "add_mtp_track_to_db"
#4 0x01a15575 in mtp_tracklist_cb (tracks=0xb5d278f0, source=0x8cdbd80) at rb-mtp-source.c:976
db = 0x8c40068
track = 0xb5d8cb18
#5 0x01a1860d in get_track_list (thread=0x9482c80) at rb-mtp-thread.c:446
tracks = 0xb5d278f0
albums = <value optimized out>
album = <value optimized out>
cb = 0x1a15540 <mtp_tracklist_cb>
device_forgets_albums = 0
update_albums = 0x0
#6 run_task (thread=0x9482c80) at rb-mtp-thread.c:659
name = <value optimized out>
#7 task_thread (thread=0x9482c80) at rb-mtp-thread.c:694
task = <value optimized out>
quit = 0
queue = 0x94975f8
__FUNCTION__ = "task_thread"
#8 0x011602df in g_thread_create_proxy (data=0x9497620) at /build/buildd/glib2.0-2.28.5/./glib/gthread.c:1897
thread = 0x9497620
__PRETTY_FUNCTION__ = "g_thread_create_proxy"
#9 0x00ed0e99 in start_thread (arg=0xb2bf6b70) at pthread_create.c:304
pd = 0xb2bf6b70
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {15601652, 0, 4001536, -1296080200, -470808153, 1194293955}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
pagesize_m1 = <value optimized out>
sp = <value optimized out>
freesize = <value optimized out>
__PRETTY_FUNCTION__ = "start_thread"
#10 0x0274073e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals."
Version: 0.13.x