ipod: rhythmbox crashed with SIGSEGV if ejected during sync.
Submitted by gno..@..il.com
Link to original bug (#773237)
Description
Thread 1 (Thread 0x7f163fc094c0 (LWP 2797)):
#0 0x00007f163e604350 in g_list_remove (list=0x7f163e8e1930 <g_cclosure_marshal_generic_va>, data=0x55ac9e144ea0) at ././glib/glist.c:516
#1 0x00007f162461bd7b in itdb_playlist_remove_track () at /usr/lib/x86_64-linux-gnu/libgpod.so.4
#2 0x00007f16248a0e7f in rb_ipod_db_remove_from_playlist (track=0x55ac9e144ea0, playlist=0x55ac9e149230, ipod_db=0x55ac9cefdc80 [RbIpodDb]) at rb-ipod-db.c:438
#3 0x00007f16248a0e7f in rb_ipod_db_remove_from_playlist (ipod_db=0x55ac9cefdc80 [RbIpodDb], playlist=0x55ac9e149230, track=0x55ac9e144ea0) at rb-ipod-db.c:554
#7 0x00007f163e8fbfaf in <emit signal ??? on instance 0x55ac9e288470 [RhythmDBQueryModel]> (instance=<optimized out>, signal_id=signal_id@entry=446, detail=detail@entry=0) at ././gobject/gsignal.c:3447
#4 0x00007f163e8e0f75 in g_closure_invoke (closure=0x55ac9e337fb0, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7fff39835200, invocation_hint=invocation_hint@entry=0x7fff39835180) at ././gobject/gclosure.c:804
#5 0x00007f163e8f2f82 in signal_emit_unlocked_R (node=node@entry=0x55ac9be29690, detail=detail@entry=0, instance=instance@entry=0x55ac9e288470, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff39835200) at ././gobject/gsignal.c:3635
#6 0x00007f163e8fbbcc in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fff398353c0) at ././gobject/gsignal.c:3391
#8 0x00007f163f839c4e in rhythmdb_query_model_remove_entry (model=<optimized out>, entry=0x55ac9dab3800) at rhythmdb-query-model.c:1818
#12 0x00007f163e8fbfaf in <emit signal ??? on instance 0x55ac9baee480 [RhythmDBTree]> (instance=<optimized out>, signal_id=<optimized out>, detail=detail@entry=0) at ././gobject/gsignal.c:3447
#9 0x00007f163e8e0f75 in g_closure_invoke (closure=0x55ac9e2edd10, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7fff39835670, invocation_hint=invocation_hint@entry=0x7fff398355f0) at ././gobject/gclosure.c:804
#10 0x00007f163e8f2f82 in signal_emit_unlocked_R (node=node@entry=0x55ac9bbd5d10, detail=detail@entry=0, instance=instance@entry=0x55ac9baee480, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff39835670) at ././gobject/gsignal.c:3635
#11 0x00007f163e8fbbcc in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fff39835830) at ././gobject/gsignal.c:3391
#13 0x00007f163f82d1c0 in rhythmdb_emit_entry_deleted (db=<optimized out>, entry=entry@entry=0x55ac9dab3800) at rhythmdb.c:4454
#14 0x00007f163f844774 in remove_one_song (key=<optimized out>, entry=0x55ac9dab3800, ctxt=0x7fff39835980) at rhythmdb-tree.c:1758
#15 0x00007f163e5f68c0 in g_hash_table_foreach_remove_or_steal (hash_table=0x55ac9bb705e0, func=func@entry=0x7f163f8446f0 <remove_one_song>, user_data=user_data@entry=0x7fff39835980, notify=notify@entry=1)
at ././glib/ghash.c:1492
#16 0x00007f163e5f771c in g_hash_table_foreach_remove (hash_table=<optimized out>, func=func@entry=0x7f163f8446f0 <remove_one_song>, user_data=user_data@entry=0x7fff39835980) at ././glib/ghash.c:1538
#17 0x00007f163f8446aa in rhythmdb_tree_entry_delete_by_type (adb=0x55ac9baee480 [RhythmDBTree], type=0x55ac9ceec8d0 [RhythmDBEntryType]) at rhythmdb-tree.c:1782
#18 0x00007f163f7e1786 in impl_delete_thyself (page=0x55ac9d62c390 [RBiPodSource]) at rb-media-player-source.c:1120
#19 0x00007f163f7d6ba9 in rb_display_page_delete_thyself (page=0x55ac9d62c390 [RBiPodSource]) at rb-display-page.c:151
#23 0x00007f163e8fc45b in <emit signal 0x7f163b675ea8 "mount-pre-unmount" on instance 0x55ac9bbb96c0 [GUnionVolumeMonitor]> (instance=0x55ac9bbb96c0, detailed_signal=0x7f163b675ea8 "mount-pre-unmount")
at ././gobject/gsignal.c:3487
#20 0x00007f163e8e0f75 in g_closure_invoke (closure=0x55ac9c3d7570, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7fff39835bc0, invocation_hint=invocation_hint@entry=0x7fff39835b40) at ././gobject/gclosure.c:804
#21 0x00007f163e8f2f82 in signal_emit_unlocked_R (node=node@entry=0x55ac9bd67a80, detail=detail@entry=0, instance=instance@entry=0x55ac9bbb96c0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff39835bc0) at ././gobject/gsignal.c:3635
#22 0x00007f163e8fbbcc in g_signal_emit_valist (instance=instance@entry=0x55ac9bbb96c0, signal_id=signal_id@entry=270, detail=detail@entry=0, var_args=var_args@entry=0x7fff39835dc8)
at ././gobject/gsignal.c:3391
#27 0x00007f163e8fc45b in <emit signal 0x7f16275f52db "mount-pre-unmount" on instance 0x55ac9bd75c50 [GProxyVolumeMonitorUDisks2]> (instance=0x55ac9bd75c50, detailed_signal=0x7f16275f52db "mount-pre-unmount")
at ././gobject/gsignal.c:3487
#24 0x00007f163e8e0f75 in g_closure_invoke (closure=0x55ac9bb9c2d0, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7fff398360b0, invocation_hint=invocation_hint@entry=0x7fff39836030) at ././gobject/gclosure.c:804
#25 0x00007f163e8f2f82 in signal_emit_unlocked_R (node=node@entry=0x55ac9bd67a80, detail=detail@entry=0, instance=instance@entry=0x55ac9bd75c50, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff398360b0) at ././gobject/gsignal.c:3635
#26 0x00007f163e8fbbcc in g_signal_emit_valist (instance=instance@entry=0x55ac9bd75c50, signal_id=signal_id@entry=270, detail=detail@entry=0, var_args=var_args@entry=0x7fff398362b8)
at ././gobject/gsignal.c:3391
#28 0x00007f16275eebab in signal_emit_in_idle_do (data=0x55ac9c3577c0) at gproxyvolumemonitor.c:1060
#29 0x00007f163e60868a in g_main_context_dispatch (context=0x55ac9b9936b0) at ././glib/gmain.c:3201
#30 0x00007f163e60868a in g_main_context_dispatch (context=context@entry=0x55ac9b9936b0) at ././glib/gmain.c:3854
#31 0x00007f163e608a40 in g_main_context_iterate (context=context@entry=0x55ac9b9936b0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ././glib/gmain.c:3927
#32 0x00007f163e608aec in g_main_context_iteration (context=context@entry=0x55ac9b9936b0, may_block=may_block@entry=1) at ././glib/gmain.c:3988
#33 0x00007f163b5ef70d in g_application_run (application=0x55ac9b99c180 [RBApplication], argc=argc@entry=1, argv=argv@entry=0x7fff398368a8) at ././gio/gapplication.c:2381
#34 0x00007f163f7b3558 in rb_application_run (app=0x55ac9b99c180 [RBApplication], argc=1, argv=<optimized out>) at rb-application.c:667
#35 0x000055ac9a3cdd73 in main (argc=1, argv=0x7fff398368a8) at main.c:88
Version: HEAD