Bug 205951 - Crashes when attempting to save playlist to MTP device
Summary: Crashes when attempting to save playlist to MTP device
Status: RESOLVED FIXED
Alias: None
Product: amarok
Classification: Applications
Component: Playlists/Saved Playlists (show other bugs)
Version: 2.3-GIT
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: 2.3.1
Assignee: Amarok Developers
URL:
Keywords:
: 210193 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-09-02 06:53 UTC by Ben Cooksley
Modified: 2009-12-21 09:37 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Cooksley 2009-09-02 06:53:58 UTC
Version:           Git d7db90943c7a15a0f73b5985f27cd2854dc0480b (using Devel)
Compiler:          g++ (SUSE Linux) 4.3.2 [gcc-4_3-branch revision 141291]  
OS:                Linux
Installed from:    Compiled sources

Amarok crashed when clicking "Save playlist to Portable Media".
A playlist containing 120+ items was present, and had previously been saved to disk.
The device is a Philips GoGear SA61XX according to lsusb

Application: Amarok (amarok), signal: Segmentation fault
[Current thread is 1 (Thread 0xb4216750 (LWP 16626))]

Thread 22 (Thread 0xb17c2b90 (LWP 16630)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895f62 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b94 in pthread_cond_timedwait () from /lib/libc.so.6
#3  0xb27928a1 in ?? () from /usr/lib/libxine.so.1

Thread 21 (Thread 0xb0fc1b90 (LWP 16631)):
#0  0xb6890240 in __i686.get_pc_thunk.bx () from /lib/libpthread.so.0
#1  0xb6894c5c in __pthread_mutex_unlock_usercnt () from /lib/libpthread.so.0
#2  0xb69c5d46 in pthread_mutex_unlock () from /lib/libc.so.6
#3  0xb49762c5 in g_main_context_release () from /usr/lib/libglib-2.0.so.0
#4  0xb4977f65 in ?? () from /usr/lib/libglib-2.0.so.0
#5  0xb4978221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#6  0xb74d5d37 in QEventDispatcherGlib::processEvents (this=0x819c900, flags={i = -1325657592}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:329
#7  0xb74ace8a in QEventLoop::processEvents (this=0xb0fc1270, flags={i = -1325657528}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventloop.cpp:149
#8  0xb74ad052 in QEventLoop::exec (this=0xb0fc1270, flags={i = -1325657480}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventloop.cpp:197
#9  0xb73cabd3 in QThread::exec (this=0x81a1c38) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qthread.cpp:487
#10 0xb27e2b7a in Phonon::Xine::XineThread::run (this=0x81a1c38) at /home/trunk/kdesvn/kdesupport/phonon/xine/xinethread.cpp:143
#11 0xb73cdab7 in QThreadPrivate::start (arg=0x81a1c38) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qthread_unix.cpp:188
#12 0xb68921b5 in start_thread () from /lib/libpthread.so.0
#13 0xb69b93be in clone () from /lib/libc.so.6

Thread 20 (Thread 0xb07b6b90 (LWP 16634)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb69a9b5b in read () from /lib/libc.so.6
#2  0xb2a2c992 in ?? () from /usr/lib/libasound.so.2
#3  0xb2a29edd in snd_ctl_read () from /usr/lib/libasound.so.2
#4  0xb2a2628f in snd_hctl_handle_events () from /usr/lib/libasound.so.2
#5  0xb2a32401 in snd_mixer_handle_events () from /usr/lib/libasound.so.2
#6  0xb07bb051 in ?? () from /usr/lib/xine/plugins/1.24/xineplug_ao_out_alsa.so
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 19 (Thread 0xaffb5b90 (LWP 16635)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb27a5044 in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 18 (Thread 0xaf7a8b90 (LWP 16636)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb27a5044 in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 17 (Thread 0xaedffb90 (LWP 16637)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb27a5044 in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 16 (Thread 0xae5b0b90 (LWP 16638)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb73ce852 in QWaitCondition::wait (this=0x8613c78, mutex=0x86803b8, time=4294967295) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#4  0xb5eec6b8 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8613c60, th=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5eef3fc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x86bc850, th=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5eeb29b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x8613c60, th=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5eef4fa in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8657f10, previous=0x0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5eef519 in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8657f10, previous=0x8b2ed60) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#11 0xb5eed51e in ThreadWeaver::ThreadRunHelper::run (this=0xae5b02c0, parent=0x8613c60, th=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:87
#12 0xb5eedb5b in ThreadWeaver::Thread::run (this=0x8657f10) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:142
#13 0xb73cdab7 in QThreadPrivate::start (arg=0x8657f10) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qthread_unix.cpp:188
#14 0xb68921b5 in start_thread () from /lib/libpthread.so.0
#15 0xb69b93be in clone () from /lib/libc.so.6

Thread 15 (Thread 0xad353b90 (LWP 16640)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xada1ae1e in os_event_wait_low (event=0x8a5c508, reset_sig_count=0) at ../../../innobase/os/os0sync.c:420
#4  0xada17b01 in os_aio_simulated_handle (global_segment=0, message1=0xad3532e8, message2=0xad3532e4, type=0xad3532e0) at ../../../innobase/os/os0file.c:4089
#5  0xad9d95dd in fil_aio_wait (segment=0) at ../../../innobase/fil/fil0fil.c:4131
#6  0xad80908e in io_handler_thread (arg=0xadd36b60) at ../../../innobase/srv/srv0start.c:446
#7  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#8  0xb69b93be in clone () from /lib/libc.so.6

Thread 14 (Thread 0xac03bb90 (LWP 16641)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xada1ae1e in os_event_wait_low (event=0x8a5c578, reset_sig_count=0) at ../../../innobase/os/os0sync.c:420
#4  0xada17b01 in os_aio_simulated_handle (global_segment=1, message1=0xac03b2e8, message2=0xac03b2e4, type=0xac03b2e0) at ../../../innobase/os/os0file.c:4089
#5  0xad9d95dd in fil_aio_wait (segment=1) at ../../../innobase/fil/fil0fil.c:4131
#6  0xad80908e in io_handler_thread (arg=0xadd36b64) at ../../../innobase/srv/srv0start.c:446
#7  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#8  0xb69b93be in clone () from /lib/libc.so.6

Thread 13 (Thread 0xab83ab90 (LWP 16642)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xada1ae1e in os_event_wait_low (event=0x8a5c5e8, reset_sig_count=0) at ../../../innobase/os/os0sync.c:420
#4  0xada17b01 in os_aio_simulated_handle (global_segment=2, message1=0xab83a2e8, message2=0xab83a2e4, type=0xab83a2e0) at ../../../innobase/os/os0file.c:4089
#5  0xad9d95dd in fil_aio_wait (segment=2) at ../../../innobase/fil/fil0fil.c:4131
#6  0xad80908e in io_handler_thread (arg=0xadd36b68) at ../../../innobase/srv/srv0start.c:446
#7  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#8  0xb69b93be in clone () from /lib/libc.so.6

Thread 12 (Thread 0xab039b90 (LWP 16643)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xada1ae1e in os_event_wait_low (event=0x8a5c658, reset_sig_count=0) at ../../../innobase/os/os0sync.c:420
#4  0xada17b01 in os_aio_simulated_handle (global_segment=3, message1=0xab0392e8, message2=0xab0392e4, type=0xab0392e0) at ../../../innobase/os/os0file.c:4089
#5  0xad9d95dd in fil_aio_wait (segment=3) at ../../../innobase/fil/fil0fil.c:4131
#6  0xad80908e in io_handler_thread (arg=0xadd36b6c) at ../../../innobase/srv/srv0start.c:446
#7  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#8  0xb69b93be in clone () from /lib/libc.so.6

Thread 11 (Thread 0xa9ba8b90 (LWP 16645)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb69b2411 in select () from /lib/libc.so.6
#2  0xada1b2ea in os_thread_sleep (tm=0) at ../../../innobase/os/os0thread.c:274
#3  0xad8055e0 in srv_lock_timeout_and_monitor_thread (arg=0x0) at ../../../innobase/srv/srv0srv.c:1882
#4  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#5  0xb69b93be in clone () from /lib/libc.so.6

Thread 10 (Thread 0xa93a7b90 (LWP 16646)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb69b2411 in select () from /lib/libc.so.6
#2  0xada1b2ea in os_thread_sleep (tm=0) at ../../../innobase/os/os0thread.c:274
#3  0xad804429 in srv_error_monitor_thread (arg=0x0) at ../../../innobase/srv/srv0srv.c:2106
#4  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#5  0xb69b93be in clone () from /lib/libc.so.6

Thread 9 (Thread 0xa8ba6b90 (LWP 16647)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xada1ae1e in os_event_wait_low (event=0x8642300, reset_sig_count=0) at ../../../innobase/os/os0sync.c:420
#4  0xad803639 in srv_master_thread (arg=0x0) at ../../../innobase/srv/srv0srv.c:2598
#5  0xb68921b5 in start_thread () from /lib/libpthread.so.0
#6  0xb69b93be in clone () from /lib/libc.so.6

Thread 8 (Thread 0xa667bb90 (LWP 16666)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb73ce852 in QWaitCondition::wait (this=0x8613c78, mutex=0x86803b8, time=4294967295) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#4  0xb5eec6b8 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8613c60, th=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5eef3fc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x86bc850, th=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5eeb29b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x8613c60, th=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5eef4fa in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8e0c080, previous=0x0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5eef519 in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8e0c080, previous=0x968ac48) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#11 0xb5eed51e in ThreadWeaver::ThreadRunHelper::run (this=0xa667b2c0, parent=0x8613c60, th=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:87
#12 0xb5eedb5b in ThreadWeaver::Thread::run (this=0x8e0c080) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:142
#13 0xb73cdab7 in QThreadPrivate::start (arg=0x8e0c080) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qthread_unix.cpp:188
#14 0xb68921b5 in start_thread () from /lib/libpthread.so.0
#15 0xb69b93be in clone () from /lib/libc.so.6

Thread 7 (Thread 0xa5e7ab90 (LWP 16667)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb73ce852 in QWaitCondition::wait (this=0x8613c78, mutex=0x86803b8, time=4294967295) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#4  0xb5eec6b8 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8613c60, th=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5eef3fc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x86bc850, th=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5eeb29b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x8613c60, th=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5eef4fa in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8d0c9c8, previous=0x0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5eef519 in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8d0c9c8, previous=0x8f14480) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#11 0xb5eed51e in ThreadWeaver::ThreadRunHelper::run (this=0xa5e7a2c0, parent=0x8613c60, th=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:87
#12 0xb5eedb5b in ThreadWeaver::Thread::run (this=0x8d0c9c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:142
#13 0xb73cdab7 in QThreadPrivate::start (arg=0x8d0c9c8) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qthread_unix.cpp:188
#14 0xb68921b5 in start_thread () from /lib/libpthread.so.0
#15 0xb69b93be in clone () from /lib/libc.so.6

Thread 6 (Thread 0xa5679b90 (LWP 16668)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb73ce852 in QWaitCondition::wait (this=0x8613c78, mutex=0x86803b8, time=4294967295) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#4  0xb5eec6b8 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8613c60, th=0x8e7ceb0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:365
#5  0xb5eef3fc in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x86bc850, th=0x8e7ceb0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:80
#6  0xb5eeb29b in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x8613c60, th=0x8e7ceb0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:356
#7  0xb5eef4fa in ThreadWeaver::WorkingHardState::applyForWork (this=0x86bc850, th=0x8e7ceb0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0xb5eecc33 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8613c60, th=0x8e7ceb0, previous=0x95c62c8) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/WeaverImpl.cpp:351
#9  0xb5eed51e in ThreadWeaver::ThreadRunHelper::run (this=0xa56792c0, parent=0x8613c60, th=0x8e7ceb0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:87
#10 0xb5eedb5b in ThreadWeaver::Thread::run (this=0x8e7ceb0) at /home/trunk/kdesvn/kdelibs/threadweaver/Weaver/Thread.cpp:142
#11 0xb73cdab7 in QThreadPrivate::start (arg=0x8e7ceb0) at /home/trunk/kdesvn/qt-copy/src/corelib/thread/qthread_unix.cpp:188
#12 0xb68921b5 in start_thread () from /lib/libpthread.so.0
#13 0xb69b93be in clone () from /lib/libc.so.6

Thread 5 (Thread 0xa43a1b90 (LWP 16704)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895f62 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b94 in pthread_cond_timedwait () from /lib/libc.so.6
#3  0xb27a13de in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 4 (Thread 0xa37b7b90 (LWP 16705)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb27964fc in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 3 (Thread 0xa2de9b90 (LWP 16706)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb27964fc in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 2 (Thread 0xa25e8b90 (LWP 16707)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb6895c35 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb69c5b3d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb27a8148 in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 1 (Thread 0xb4216750 (LWP 16626)):
[KCrash Handler]
#6  0xaef18192 in Meta::MtpHandler::libSavePlaylist (this=0x860a1a8, playlist=@0xbfaf7cb4, name=@0xbfaf7d00)
    at /home/trunk/manual-source/amarok/src/collection/mtpcollection/handler/MtpHandler.cpp:884
#7  0xaef1e005 in Handler::MtpPlaylistCapability::savePlaylist (this=0x867d290, playlist=@0xbfaf7cb4, name=@0xbfaf7d00)
    at /home/trunk/manual-source/amarok/src/collection/mtpcollection/handler/capabilities/MtpPlaylistCapability.cpp:97
#8  0xb7a0cbdf in Meta::MediaDeviceHandler::savePlaylist (this=0x860a1a8, playlist=@0xbfaf7cb4, name=@0xbfaf7d00)
    at /home/trunk/manual-source/amarok/src/collection/mediadevicecollection/handler/MediaDeviceHandler.cpp:1062
#9  0xb7a11c74 in Meta::MediaDeviceHandler::qt_metacall (this=0x860a1a8, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0xbfaf7bf8)
    at /home/trunk/manual-source/amarok/build/src/MediaDeviceHandler.moc:129
#10 0xaef111ba in Meta::MtpHandler::qt_metacall (this=0x860a1a8, _c=QMetaObject::InvokeMetaMethod, _id=13, _a=0xbfaf7bf8)
    at /home/trunk/manual-source/amarok/build/src/collection/mtpcollection/moc_MtpHandler.cpp:64
#11 0xb74c0b88 in QMetaObject::activate (sender=0x8166e68, from_signal_index=6, to_signal_index=6, argv=0xbfaf7bf8) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qobject.cpp:3109
#12 0xb74c1152 in QMetaObject::activate (sender=0x8166e68, m=0xb7d2ee7c, local_signal_index=0, argv=0xbfaf7bf8) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qobject.cpp:3186
#13 0xb7a15ba9 in MediaDeviceUserPlaylistProvider::playlistSaved (this=0x8166e68, _t1=@0xbfaf7cb4, _t2=@0xbfaf7d00)
    at /home/trunk/manual-source/amarok/build/src/MediaDeviceUserPlaylistProvider.moc:92
#14 0xb7a19268 in MediaDeviceUserPlaylistProvider::save (this=0x8166e68, tracks=@0xbfaf7dd4, name=@0xbfaf7d00)
    at /home/trunk/manual-source/amarok/src/collection/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp:156
#15 0xb7a19592 in MediaDeviceUserPlaylistProvider::save (this=0x8166e68, tracks=@0xbfaf7dd4)
    at /home/trunk/manual-source/amarok/src/collection/mediadevicecollection/playlist/MediaDeviceUserPlaylistProvider.cpp:143
#16 0xb7b2fef1 in PlaylistManager::save (this=0x8ae7340, tracks=
        {{p = {static shared_null = {ref = {_q_value = 45746}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0xbfaf7dd4}, d = 0xbfaf7dd4}}, name=@0xbfaf7dd0, toProvider=0x8166e68)
    at /home/trunk/manual-source/amarok/src/playlistmanager/PlaylistManager.cpp:312
#17 0xb7950c96 in Playlist::Widget::slotSaveCurrentPlaylist (this=0x8709eb8) at /home/trunk/manual-source/amarok/src/playlist/PlaylistWidget.cpp:215
#18 0xb786e64b in Playlist::Widget::qt_metacall (this=0x8709eb8, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfaf7efc) at /home/trunk/manual-source/amarok/build/src/moc_PlaylistWidget.cpp:79
#19 0xb74c0b88 in QMetaObject::activate (sender=0x86746e8, from_signal_index=5, to_signal_index=6, argv=0xbfaf7efc) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qobject.cpp:3109
#20 0xb74c0ed0 in QMetaObject::activate (sender=0x86746e8, m=0xb7357ec8, from_local_signal_index=1, to_local_signal_index=2, argv=0xbfaf7efc)
    at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qobject.cpp:3206
#21 0xb6c96071 in QAction::triggered (this=0x86746e8, _t1=false) at .moc/release-shared/moc_qaction.cpp:236
#22 0xb6c9731f in QAction::activate (this=0x86746e8, event=QAction::Trigger) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qaction.cpp:1160
#23 0xb7084552 in QMenuPrivate::activateCausedStack (this=0x8d15138, causedStack=@0xbfaf7fd8, action=0x86746e8, action_e=QAction::Trigger, self=true)
    at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qmenu.cpp:967
#24 0xb708aaf1 in QMenuPrivate::activateAction (this=0x8d15138, action=0x86746e8, action_e=QAction::Trigger, self=<value optimized out>) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qmenu.cpp:1060
#25 0xb708b8e2 in QMenu::mouseReleaseEvent (this=0x8d14a00, e=0xbfaf86bc) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qmenu.cpp:2254
#26 0xb8005b95 in KMenu::mouseReleaseEvent (this=0x8d14a00, e=0xbfaf86bc) at /home/trunk/kdesvn/kdelibs/kdeui/widgets/kmenu.cpp:456
#27 0xb6ceee92 in QWidget::event (this=0x8d14a00, event=0xbfaf86bc) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qwidget.cpp:7549
#28 0xb708c359 in QMenu::event (this=0x8d14a00, e=0xbfaf86bc) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qmenu.cpp:2353
#29 0xb6c9b9bc in QApplicationPrivate::notify_helper (this=0x8112320, receiver=0x8d14a00, e=0xbfaf86bc) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication.cpp:4056
#30 0xb6ca4c06 in QApplication::notify (this=0xbfafaa78, receiver=0x8d14a00, e=0xbfaf86bc) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication.cpp:3758
#31 0xb7f1ea4d in KApplication::notify (this=0xbfafaa78, receiver=0x8d14a00, event=0xbfaf86bc) at /home/trunk/kdesvn/kdelibs/kdeui/kernel/kapplication.cpp:302
#32 0xb74ae6fb in QCoreApplication::notifyInternal (this=0xbfafaa78, receiver=0x8d14a00, event=0xbfaf86bc) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qcoreapplication.cpp:606
#33 0xb6ca3d4e in QApplicationPrivate::sendMouseEvent (receiver=0x8d14a00, event=0xbfaf86bc, alienWidget=0x0, nativeWidget=0x8d14a00, buttonDown=0xb73761e0, lastMouseReceiver=@0xb73761e4)
    at ../../include/QtCore/../../../../qt-copy/src/corelib/kernel/qcoreapplication.h:216
#34 0xb6d0649d in QETWidget::translateMouseEvent (this=0x8d14a00, event=0xbfaf9c6c) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication_x11.cpp:4343
#35 0xb6d05294 in QApplication::x11ProcessEvent (this=0xbfafaa78, event=0xbfaf9c6c) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication_x11.cpp:3550
#36 0xb6d2c5c2 in x11EventSourceDispatch (s=0x81184a8, callback=0, user_data=0x0) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qguieventdispatcher_glib.cpp:146
#37 0xb49749a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#38 0xb4978063 in ?? () from /usr/lib/libglib-2.0.so.0
#39 0xb4978221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#40 0xb74d5d18 in QEventDispatcherGlib::processEvents (this=0x805eb00, flags={i = -1079009752}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:327
#41 0xb6d2bdb5 in QGuiEventDispatcherGlib::processEvents (this=0x805eb00, flags={i = -1079009704}) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qguieventdispatcher_glib.cpp:202
#42 0xb74ace8a in QEventLoop::processEvents (this=0xbfaf9ecc, flags={i = -1079009640}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventloop.cpp:149
#43 0xb74ad052 in QEventLoop::exec (this=0xbfaf9ecc, flags={i = -1079009580}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventloop.cpp:197
#44 0xb708c1e9 in QMenu::exec (this=0x8d14a00, p=@0xbfaf9fd0, action=0x0) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qmenu.cpp:1993
#45 0xb70d6093 in QToolButtonPrivate::popupTimerDone (this=0x8d17650) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qtoolbutton.cpp:943
#46 0xb74bd93f in QObject::event (this=0x8d17638, e=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qobject.cpp:1074
#47 0xb6ceeae6 in QWidget::event (this=0x8d17638, event=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qwidget.cpp:7946
#48 0xb6fff3ee in QAbstractButton::event (this=0x8d17638, e=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qabstractbutton.cpp:1077
#49 0xb70d6e1a in QToolButton::event (this=0x8d17638, event=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/gui/widgets/qtoolbutton.cpp:1151
#50 0xb6c9b9bc in QApplicationPrivate::notify_helper (this=0x8112320, receiver=0x8d17638, e=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication.cpp:4056
#51 0xb6ca43f2 in QApplication::notify (this=0xbfafaa78, receiver=0x8d17638, e=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication.cpp:4021
#52 0xb7f1ea4d in KApplication::notify (this=0xbfafaa78, receiver=0x8d17638, event=0xbfafa53c) at /home/trunk/kdesvn/kdelibs/kdeui/kernel/kapplication.cpp:302
#53 0xb74ae6fb in QCoreApplication::notifyInternal (this=0xbfafaa78, receiver=0x8d17638, event=0xbfafa53c) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qcoreapplication.cpp:606
#54 0xb74d92f1 in QTimerInfoList::activateTimers (this=0x8118474) at ../../include/QtCore/../../../../qt-copy/src/corelib/kernel/qcoreapplication.h:213
#55 0xb74d5dc0 in timerSourceDispatch (source=0x8118440) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:165
#56 0xb49749a8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#57 0xb4978063 in ?? () from /usr/lib/libglib-2.0.so.0
#58 0xb4978221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#59 0xb74d5d18 in QEventDispatcherGlib::processEvents (this=0x805eb00, flags={i = -1079007560}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:327
#60 0xb6d2bdb5 in QGuiEventDispatcherGlib::processEvents (this=0x805eb00, flags={i = -1079007512}) at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qguieventdispatcher_glib.cpp:202
#61 0xb74ace8a in QEventLoop::processEvents (this=0xbfafa750, flags={i = -1079007448}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventloop.cpp:149
#62 0xb74ad052 in QEventLoop::exec (this=0xbfafa750, flags={i = -1079007400}) at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qeventloop.cpp:197
#63 0xb74af281 in QCoreApplication::exec () at /home/trunk/kdesvn/qt-copy/src/corelib/kernel/qcoreapplication.cpp:888
#64 0xb6c9b837 in QApplication::exec () at /home/trunk/kdesvn/qt-copy/src/gui/kernel/qapplication.cpp:3525
#65 0x080516e5 in main (argc=1, argv=0xbfafb234) at /home/trunk/manual-source/amarok/src/main.cpp:216
Comment 1 Mikko C. 2009-09-02 11:09:14 UTC
IS this reproducible every time? Also with different playlists?
Comment 2 Ben Cooksley 2009-09-03 10:59:45 UTC
It is always reproducible.
Comment 3 Bart Cerneels 2009-09-07 13:25:17 UTC
Were the tracks in the playlist all from the mediaplayer?
Comment 4 Bart Cerneels 2009-09-21 20:59:58 UTC
Might be fixed in v2.1.85-106-gde02c89.

We're tagging rc1 tonight, please check as soon as possible so we can fix this before 2.2 final.
Comment 5 Myriam Schweingruber 2009-10-11 17:27:11 UTC
*** Bug 210193 has been marked as a duplicate of this bug. ***
Comment 6 Myriam Schweingruber 2009-10-21 20:16:48 UTC
Ben, can you reproduce this with current git?
Comment 7 Ben Cooksley 2009-10-22 08:31:26 UTC
Whilst it no longer crashes:

The playlist keeps its initial name and is not renamed when the name is changed through Amarok's interface ( even though it shows the new name )

The playlist itself is empty, in both Amarok's interface and on the device.

Also, there is no indication the playlist comes from a remote device.
Comment 8 Myriam Schweingruber 2009-10-22 13:05:40 UTC
Well, at least the crash is gone :)

Bart, any input on the other problems?
Comment 9 Bart Cerneels 2009-10-22 13:11:28 UTC
Something is going wrong in the MTPHandler, for both saving and renaming it seems. This is why Alejandro is CC'd.

We don't show playlists per device yet, but this is planned somewhere in the 2.2 cycle. Please create a new bug for this if you want to track progress.
Comment 10 Mark Kretschmann 2009-12-21 09:37:26 UTC
This might potentially have been fixed by this commit (in Git master), please test, and reopen the report if the problem persists. Thanks.


commit acf150893523a4c1693abb2ccae32f91140cb01d
Author: Mark Kretschmann <kretschmann@kde.org>
Date:   Mon Dec 21 08:53:42 2009 +0100

    Fix many MTP crashes caused by dangling pointers.

    The main cause for many crashes in MtpHandler were dangling pointers to
    structures from LibMTP. Using the new QSharedPointer (from Qt 4.5) makes it
    easy to fix such issues elegantly and safely. Please consider using it in
    other places too. It's often worth the tiny overhead.

    Note: I'm not sure how many bug reports this affects. Probably several.