Bug 279798 - Amarok crashes when iPod is plugged in with following message: ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread.
Summary: Amarok crashes when iPod is plugged in with following message: ASSERT failure...
Status: RESOLVED FIXED
Alias: None
Product: amarok
Classification: Applications
Component: Collections/iPod iPhone (show other bugs)
Version: 2.4-GIT
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: 2.5
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-10 09:39 UTC by Bernd Buschinski
Modified: 2011-12-20 11:05 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 2.5


Attachments
New crash information added by DrKonqi (14.29 KB, text/plain)
2011-11-01 02:36 UTC, simon
Details
new-same-backtrace (15.08 KB, text/plain)
2011-11-01 09:13 UTC, Bernd Buschinski
Details
different crash with Qt 4.7.4 (12.71 KB, text/plain)
2011-11-05 21:03 UTC, Bernd Buschinski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernd Buschinski 2011-08-10 09:39:54 UTC
Version:           2.4-GIT (using KDE 4.7.0) 
OS:                Linux

amarok crashes when I plugin my ipod video 60gb

todays amarok git master

Reproducible: Always

Steps to Reproduce:
- start amarok
- plugin your ipod

Actual Results:  
crash

Expected Results:  
my ipod should be shown as collection

Application: Amarok (amarok), signal: Aborted
[Current thread is 1 (Thread 0x7fe4aaefc7a0 (LWP 5186))]

Thread 8 (Thread 0x7fe48a043700 (LWP 5188)):
#0  0x00007fe4a22882cb in g_main_context_prepare (context=0x1863d80, priority=0x7fe48a042bb8) at gmain.c:2764
#1  0x00007fe4a22891ad in g_main_context_iterate (context=0x1863d80, block=1, dispatch=1, self=<optimized out>) at gmain.c:3072
#2  0x00007fe4a2289849 in g_main_context_iteration (context=0x1863d80, may_block=1) at gmain.c:3155
#3  0x00007fe4a8123d96 in QEventDispatcherGlib::processEvents (this=0x18429d0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007fe4a80f41a2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fe4a80f439f in QEventLoop::exec (this=0x7fe48a042ce0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007fe4a7fff149 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:492
#7  0x00007fe4a80d4dd3 in QInotifyFileSystemWatcherEngine::run (this=0x183afd0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fe4a800200a in QThreadPrivate::start (arg=0x183afd0) at thread/qthread_unix.cpp:320
#9  0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#10 0x00007fe4a5936e6c in start_thread (arg=0x7fe48a043700) at pthread_create.c:301
#11 0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 7 (Thread 0x7fe48310d700 (LWP 5190)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fe4a800251b in wait (time=18446744073709551615, this=0x1bae6e0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1c2d820, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fe4a4cda014 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c86f00, th=0x1c7efb0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe4a4cdc5bb in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x1c7efb0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe4a4cdb47f in ThreadWeaver::ThreadRunHelper::run (this=0x7fe48310cd40, parent=0x1c86f00, th=0x1c7efb0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:87
#6  0x00007fe4a4cdb50b in ThreadWeaver::Thread::run (this=0x1c7efb0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:142
#7  0x00007fe4a800200a in QThreadPrivate::start (arg=0x1c7efb0) at thread/qthread_unix.cpp:320
#8  0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#9  0x00007fe4a5936e6c in start_thread (arg=0x7fe48310d700) at pthread_create.c:301
#10 0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 6 (Thread 0x7fe48290c700 (LWP 5191)):
#0  0x00007fe4a77ab143 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007fe4a80d47c1 in QProcessManager::run (this=0x7fe4a8432f60) at io/qprocess_unix.cpp:245
#2  0x00007fe4a800200a in QThreadPrivate::start (arg=0x7fe4a8432f60) at thread/qthread_unix.cpp:320
#3  0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#4  0x00007fe4a5936e6c in start_thread (arg=0x7fe48290c700) at pthread_create.c:301
#5  0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 5 (Thread 0x7fe48210b700 (LWP 5193)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fe4a800251b in wait (time=18446744073709551615, this=0x1bae6e0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1c2d820, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fe4a4cda014 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c86f00, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe4a4cdc5bb in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#7  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#8  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#9  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#10 0x00007fe4a4cdb47f in ThreadWeaver::ThreadRunHelper::run (this=0x7fe48210ad40, parent=0x1c86f00, th=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:87
#11 0x00007fe4a4cdb50b in ThreadWeaver::Thread::run (this=0x18dfbe0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:142
#12 0x00007fe4a800200a in QThreadPrivate::start (arg=0x18dfbe0) at thread/qthread_unix.cpp:320
#13 0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#14 0x00007fe4a5936e6c in start_thread (arg=0x7fe48210b700) at pthread_create.c:301
#15 0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 4 (Thread 0x7fe48190a700 (LWP 5194)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fe4a3cde102 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x7fe4a3fdae80) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007fe4a3cde139 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#4  0x00007fe4a5936e6c in start_thread (arg=0x7fe48190a700) at pthread_create.c:301
#5  0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 3 (Thread 0x7fe47dcff700 (LWP 5195)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fe4a800251b in wait (time=18446744073709551615, this=0x1bae6e0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1c2d820, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fe4a4cda014 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c86f00, th=0x1cfdb90) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe4a4cdc5bb in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x1cfdb90) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x1cfdb90) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fe4a4cdb47f in ThreadWeaver::ThreadRunHelper::run (this=0x7fe47dcfed40, parent=0x1c86f00, th=0x1cfdb90) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:87
#7  0x00007fe4a4cdb50b in ThreadWeaver::Thread::run (this=0x1cfdb90) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:142
#8  0x00007fe4a800200a in QThreadPrivate::start (arg=0x1cfdb90) at thread/qthread_unix.cpp:320
#9  0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#10 0x00007fe4a5936e6c in start_thread (arg=0x7fe47dcff700) at pthread_create.c:301
#11 0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7fe47d4fe700 (LWP 5196)):
#0  pthread_cond_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fe4a800251b in wait (time=18446744073709551615, this=0x1bae6e0) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1c2d820, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fe4a4cda014 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x1c86f00, th=0x1d8c5e0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WeaverImpl.cpp:365
#4  0x00007fe4a4cdc5bb in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x1d8c5e0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:71
#5  0x00007fe4a4cdc5d4 in ThreadWeaver::WorkingHardState::applyForWork (this=0x1badea0, th=0x1d8c5e0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/WorkingHardState.cpp:74
#6  0x00007fe4a4cdb47f in ThreadWeaver::ThreadRunHelper::run (this=0x7fe47d4fdd40, parent=0x1c86f00, th=0x1d8c5e0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:87
#7  0x00007fe4a4cdb50b in ThreadWeaver::Thread::run (this=0x1d8c5e0) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/threadweaver/Weaver/Thread.cpp:142
#8  0x00007fe4a800200a in QThreadPrivate::start (arg=0x1d8c5e0) at thread/qthread_unix.cpp:320
#9  0x00007fe49a9d8bc3 in ?? () from //usr/lib64/opengl/nvidia/lib/libGL.so.1
#10 0x00007fe4a5936e6c in start_thread (arg=0x7fe47d4fe700) at pthread_create.c:301
#11 0x00007fe4a77b170d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7fe4aaefc7a0 (LWP 5186)):
[KCrash Handler]
#6  0x00007fe4a7711865 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007fe4a7712cdb in __GI_abort () at abort.c:92
#8  0x00007fe4a7ff72c4 in qt_message_output (msgType=<optimized out>, buf=<optimized out>) at global/qglobal.cpp:2282
#9  0x00007fe4a7ff744f in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7fe4a815c1f8 "ASSERT failure in %s: \"%s\", file %s, line %d", ap=0x7fff9cf6a5f8) at global/qglobal.cpp:2328
#10 0x00007fe4a7ff75f4 in qFatal (msg=<optimized out>) at global/qglobal.cpp:2511
#11 0x00007fe4a90c3b14 in at (i=2, this=0x1c6abe0) at ../../include/QtCore/../../src/corelib/tools/qvector.h:339
#12 QSortFilterProxyModelPrivate::can_create_mapping (this=<optimized out>, source_parent=...) at itemviews/qsortfilterproxymodel.cpp:406
#13 0x00007fe4a90c71b9 in QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeInserted (this=0x1c61560, source_parent=..., start=<optimized out>, end=<optimized out>) at itemviews/qsortfilterproxymodel.cpp:1271
#14 0x00007fe4a90cb744 in QSortFilterProxyModel::qt_metacall (this=0x1c60130, _c=QMetaObject::InvokeMetaMethod, _id=11, _a=0x7fff9cf6a860) at .moc/debug-shared/moc_qsortfilterproxymodel.cpp:134
#15 0x00007fe4a9b10a10 in PlaylistBrowserFilterProxy::qt_metacall (this=0x1c60130, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff9cf6a860) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999_build/src/moc_PlaylistBrowserFilterProxy.cpp:72
#16 0x00007fe4a8109f00 in QMetaObject::activate (sender=0x1c5ddc0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff9cf6a860) at kernel/qobject.cpp:3278
#17 0x00007fe4a81586e4 in QAbstractItemModel::rowsAboutToBeInserted (this=<optimized out>, _t1=<optimized out>, _t2=0, _t3=0) at .moc/debug-shared/moc_qabstractitemmodel.cpp:174
#18 0x00007fe4a80eeb7a in QAbstractItemModel::beginInsertRows (this=0x1c5ddc0, parent=..., first=0, last=0) at kernel/qabstractitemmodel.cpp:2395
#19 0x00007fe4a9e00cac in QtGroupingProxy::addSourceRow (this=0x1c5ddc0, idx=...) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/browsers/playlistbrowser/QtGroupingProxy.cpp:246
#20 0x00007fe4a9e017b8 in QtGroupingProxy::modelRowsInserted (this=0x1c5ddc0, parent=<optimized out>, start=<optimized out>, end=1) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/browsers/playlistbrowser/QtGroupingProxy.cpp:714
#21 0x00007fe4a9b0b8ec in QtGroupingProxy::qt_metacall (this=0x1c5ddc0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff9cf6acd0) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999_build/src/moc_QtGroupingProxy.cpp:84
#22 0x00007fe4a9b0efb0 in PlaylistsByProviderProxy::qt_metacall (this=0x1c5ddc0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff9cf6acd0) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999_build/src/moc_PlaylistsByProviderProxy.cpp:73
#23 0x00007fe4a8109f00 in QMetaObject::activate (sender=0x1c30870, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff9cf6acd0) at kernel/qobject.cpp:3278
#24 0x00007fe4a8158734 in QAbstractItemModel::rowsInserted (this=<optimized out>, _t1=<optimized out>, _t2=1, _t3=1) at .moc/debug-shared/moc_qabstractitemmodel.cpp:181
#25 0x00007fe4a80eece5 in QAbstractItemModel::endInsertRows (this=0x1c30870) at kernel/qabstractitemmodel.cpp:2412
#26 0x00007fe4a9df4f76 in PlaylistBrowserNS::PlaylistBrowserModel::slotPlaylistAdded (this=0x1c30870, playlist=..., category=<optimized out>) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/browsers/playlistbrowser/PlaylistBrowserModel.cpp:663
#27 0x00007fe4a9b126e1 in PlaylistBrowserNS::PlaylistBrowserModel::qt_metacall (this=0x1c30870, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0x7fe4846f4170) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999_build/src/moc_PlaylistBrowserModel.cpp:93
#28 0x00007fe4a810ed5a in QObject::event (this=0x1c30870, e=<optimized out>) at kernel/qobject.cpp:1217
#29 0x00007fe4a8ae5fe2 in notify_helper (e=0x7fe4846f4d50, receiver=0x1c30870, this=0xe9f5c0) at kernel/qapplication.cpp:4462
#30 QApplicationPrivate::notify_helper (this=0xe9f5c0, receiver=0x1c30870, e=0x7fe4846f4d50) at kernel/qapplication.cpp:4434
#31 0x00007fe4a8aeb9a9 in QApplication::notify (this=0x7fff9cf6b7b0, receiver=0x1c30870, e=0x7fe4846f4d50) at kernel/qapplication.cpp:4341
#32 0x00007fe4aa90afe6 in KApplication::notify (this=0x7fff9cf6b7b0, receiver=0x1c30870, event=0x7fe4846f4d50) at /var/tmp/portage/kde-base/kdelibs-4.7.0-r1/work/kdelibs-4.7.0/kdeui/kernel/kapplication.cpp:311
#33 0x00007fe4a80f58bc in QCoreApplication::notifyInternal (this=0x7fff9cf6b7b0, receiver=0x1c30870, event=0x7fe4846f4d50) at kernel/qcoreapplication.cpp:731
#34 0x00007fe4a80f952e in sendEvent (event=0x7fe4846f4d50, receiver=0x1c30870) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#35 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0xccdb00) at kernel/qcoreapplication.cpp:1372
#36 0x00007fe4a8123883 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#37 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:277
#38 0x00007fe4a2288ddd in g_main_dispatch (context=0xd48ae0) at gmain.c:2441
#39 g_main_context_dispatch (context=0xd48ae0) at gmain.c:3014
#40 0x00007fe4a22895b8 in g_main_context_iterate (context=0xd48ae0, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3092
#41 0x00007fe4a2289849 in g_main_context_iteration (context=0xd48ae0, may_block=1) at gmain.c:3155
#42 0x00007fe4a8123d2f in QEventDispatcherGlib::processEvents (this=0xccd2e0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#43 0x00007fe4a8b9687e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#44 0x00007fe4a80f41a2 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#45 0x00007fe4a80f439f in QEventLoop::exec (this=0x7fff9cf6b740, flags=...) at kernel/qeventloop.cpp:201
#46 0x00007fe4a80f97e7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#47 0x000000000040972e in main (argc=3, argv=0x7fff9cf6de18) at /var/tmp/portage/media-sound/amarok-9999/work/amarok-9999/src/main.cpp:291
Comment 1 Matěj Laitl 2011-10-28 16:52:08 UTC
Bernd, are you able to reproduce this bug, or did it happen just once? If you could reproduce, could you try current Amarok git?
Comment 2 simon 2011-11-01 02:36:31 UTC
Created attachment 65099 [details]
New crash information added by DrKonqi

amarok (2.4-GIT) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.2

same with my android phone, if its pugged in i get this crasher

-- Backtrace (Reduced):
#11 0x00007f193a631a4f in at (this=<value optimized out>, source_parent=...) at ../../include/QtCore/../../src/corelib/tools/qvector.h:339
#12 QSortFilterProxyModelPrivate::can_create_mapping (this=<value optimized out>, source_parent=...) at itemviews/qsortfilterproxymodel.cpp:406
#13 0x00007f193a631b39 in QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeInserted (this=0x26c4, source_parent=..., start=6, end=-1) at itemviews/qsortfilterproxymodel.cpp:1271
#14 0x00007f193a63927c in QSortFilterProxyModel::qt_metacall (this=0x18e2c00, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff1e7dd490) at .moc/debug-shared/moc_qsortfilterproxymodel.cpp:134
#15 0x00007f193b073665 in PlaylistBrowserFilterProxy::qt_metacall (this=0x18e2c00, _c=QMetaObject::InvokeMetaMethod, _id=36, _a=0x7fff1e7dd490) at /home/user/kde/build/amarok/src/moc_PlaylistBrowserFilterProxy.cpp:72
Comment 3 Matěj Laitl 2011-11-01 08:54:19 UTC
Thanks for your confirmation, Simon. From the backtrace it seems that Qt wants to output a message:

qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7f1939681d98 "ASSERT failure in %s: \"%s\", file %s, line %d", ap=0x7fff1e7dd1e0)

Could you please run amarok from console using `amarok --debug` and watch for similar message? Even if you don't see it, please attach last screen of Amarok debugging output when the crash happens.
Comment 4 Bernd Buschinski 2011-11-01 09:13:38 UTC
Created attachment 65106 [details]
new-same-backtrace

Hello, sorry for my late replay, I can still reproduce the crash

here is the default konsole ouput:

QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Meta::IpodHandler(0x33cd980), parent's thread is QThread(0x1fad930), current thread is ThreadWeaver::Thread(0x2b249c0)
Object::connect: No such signal Playlists::MediaDeviceUserPlaylistProvider::playlistSaved( const Playlists::MediaDevicePlaylistPtr &, const QString& )
Object::connect: No such signal Playlists::MediaDeviceUserPlaylistProvider::playlistRenamed( const Playlists::MediaDevicePlaylistPtr &)
Object::connect: No such signal Playlists::MediaDeviceUserPlaylistProvider::playlistsDeleted( const Playlists::MediaDevicePlaylistList & )
ASSERT failure in QVector<T>::at: "index out of range", file ../../include/QtCore/../../src/corelib/tools/qvector.h, line 351
KCrash: Application 'amarok' crashing...
Comment 5 simon 2011-11-01 10:51:00 UTC
hmm now it crashes everytime, even if my phone isn't plugegd in, seems it wants to access the collection on the phone?


marok: BEGIN: void CollectionTreeItemModelBase::handleCompilations(CollectionTreeItem*) const 
amarok:   [MySqlStorage] Initialized thread, count== 4 
amarok: END__: void CollectionTreeItemModelBase::handleCompilations(CollectionTreeItem*) const [Took: 0.001s] 
amarok: [MySqlStorage] Initialized thread, count== 5 
amarok: BEGIN: virtual void CollectionTreeItemModel::requestCollectionsExpansion() 
amarok: END__: virtual void CollectionTreeItemModel::requestCollectionsExpansion() [Took: 0s] 
ASSERT failure in QVector<T>::at: "index out of range", file ../../include/QtCore/../../src/corelib/tools/qvector.h, line 339
QSocketNotifier: Invalid socket 33 and type 'Read', disabling...
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = amarok path = /home/user/kde/bin pid = 11065
KCrash: Arguments: /home/user/kde/bin/amarok --nocrashhandler --debug 
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/user/.kde4/socket-d-partment/kdeinit4__0
QSocketNotifier: Invalid socket 72 and type 'Read', disabling...
Comment 6 Matěj Laitl 2011-11-02 11:36:52 UTC
Thanks for your debug output, Benrd, that sheds some new light onto the problem so let's see if I'm able to diagnose it.

Simon, you may want to start with a fresh config: mv $KDEHOME/share/config/amarokrc $KDEHOME/share/config/amarokrc.crashing
(if you fear losing your stats, backup also $KDEHOME/share/apps/amarok). $KDEHOME is usually ~/.kde or ~/.kde4.

If it solves the crash on startup, you may want to determine what exact thing in config makes Amarok crash. Perhaps a some songs in a playlist or opened playlists view?
Comment 7 simon 2011-11-02 11:50:28 UTC
i moved to a new db yesterday, deleting config files didn't fix it
Comment 8 Myriam Schweingruber 2011-11-05 11:59:56 UTC
Which Qt version are you people using? if it is Qt 4.8 rc1 then this might be related, see also bug 285720
Comment 9 Bernd Buschinski 2011-11-05 21:03:33 UTC
Created attachment 65273 [details]
different crash with Qt 4.7.4

hm.. well.. it also crashes with Qt 4.7.4 but the backtrace is different(with the same ipod)
Comment 10 Mikko C. 2011-11-06 10:21:45 UTC
I'm also getting this crash every time on startup, a little bit after selecting the Amazon country.

$ kde4-config -v
Qt: 4.7.4
KDE Development Platform: 4.7.3 (4.7.3)
kde4-config: 1.0

Amarok from git.


amarok: BEGIN: void CollectionTreeItemModelBase::handleCompilations(CollectionTreeItem*) const 
amarok: END__: void CollectionTreeItemModelBase::handleCompilations(CollectionTreeItem*) const [Took: 0s] 
amarok: BEGIN: void CollectionTreeItemModelBase::handleCompilations(CollectionTreeItem*) const 
amarok: END__: void CollectionTreeItemModelBase::handleCompilations(CollectionTreeItem*) const [Took: 0s] 
ASSERT failure in QVector<T>::at: "index out of range", file ../../include/QtCore/../../src/corelib/tools/qvector.h, line 339
QSocketNotifier: Invalid socket 15 and type 'Read', disabling...
amarok: NOTE: MySQL server had gone away, ping reconnected it 
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = amarok path = /usr/bin pid = 2062
KCrash: Arguments: /usr/bin/amarok --nocrashhandler -d 
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/mikko/.kde4/socket-X4/kdeinit4__0



Thread 1 (Thread 0x7fe079e42780 (LWP 2062)):
[KCrash Handler]
#6  0x00007fe076441915 in raise () from /lib64/libc.so.6
#7  0x00007fe076442cba in abort () from /lib64/libc.so.6
#8  0x00007fe076d162e4 in qt_message_output (msgType=<value optimized out>, buf=<value optimized out>) at global/qglobal.cpp:2291
#9  0x00007fe076d16459 in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7fe076e7de88 "ASSERT failure in %s: \"%s\", file %s, line %d", ap=0x7fff0200de00) at global/qglobal.cpp:2337
#10 0x00007fe076d16615 in qFatal (msg=<value optimized out>) at global/qglobal.cpp:2520
#11 0x00007fe077e20c99 in at (this=<value optimized out>, source_parent=...) at ../../include/QtCore/../../src/corelib/tools/qvector.h:339
#12 QSortFilterProxyModelPrivate::can_create_mapping (this=<value optimized out>, source_parent=...) at itemviews/qsortfilterproxymodel.cpp:406
#13 0x00007fe077e24291 in QSortFilterProxyModelPrivate::_q_sourceRowsAboutToBeInserted (this=0x1c5ec20, source_parent=..., start=<value optimized out>, end=<value optimized out>) at itemviews/qsortfilterproxymodel.cpp:1271
#14 0x00007fe077e283bc in QSortFilterProxyModel::qt_metacall (this=0x1c5ec00, _c=QMetaObject::InvokeMetaMethod, _id=11, _a=0x7fff0200e090) at .moc/debug-shared/moc_qsortfilterproxymodel.cpp:136
#15 0x00007fe0788a4579 in PlaylistBrowserFilterProxy::qt_metacall (this=0x1c5ec00, _c=QMetaObject::InvokeMetaMethod, _id=36, _a=0x7fff0200e090) at /home/mikko/amarok/build/src/moc_PlaylistBrowserFilterProxy.cpp:72
#16 0x00007fe076e2ecdf in QMetaObject::activate (sender=0x1c5c9f0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fff0200e090) at kernel/qobject.cpp:3278
#17 0x00007fe076e7a0c4 in QAbstractItemModel::rowsAboutToBeInserted (this=<value optimized out>, _t1=<value optimized out>, _t2=0, _t3=0) at .moc/debug-shared/moc_qabstractitemmodel.cpp:174
#18 0x00007fe076e0e809 in QAbstractItemModel::beginInsertRows (this=0x1c5c9f0, parent=..., first=0, last=0) at kernel/qabstractitemmodel.cpp:2395
#19 0x00007fe078bbeb3d in QtGroupingProxy::addSourceRow (this=0x1c5c9f0, idx=...) at /home/mikko/amarok/src/browsers/playlistbrowser/QtGroupingProxy.cpp:239
#20 0x00007fe078bbe40c in QtGroupingProxy::buildTree (this=0x1c5c9f0) at /home/mikko/amarok/src/browsers/playlistbrowser/QtGroupingProxy.cpp:156
#21 0x00007fe078bd7451 in PlaylistsByProviderProxy::buildTree (this=0x1c5c9f0) at /home/mikko/amarok/src/browsers/playlistbrowser/PlaylistsByProviderProxy.cpp:287
#22 0x00007fe0788a76b8 in QtGroupingProxy::qt_metacall (this=0x1c5c9f0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x1c5dd20) at /home/mikko/amarok/build/src/moc_QtGroupingProxy.cpp:82
#23 0x00007fe0788a5d67 in PlaylistsByProviderProxy::qt_metacall (this=0x1c5c9f0, _c=QMetaObject::InvokeMetaMethod, _id=25, _a=0x1c5dd20) at /home/mikko/amarok/build/src/moc_PlaylistsByProviderProxy.cpp:73
#24 0x00007fe076e2e742 in QObject::event (this=0x1c5c9f0, e=<value optimized out>) at kernel/qobject.cpp:1217
#25 0x00007fe07783ad40 in QApplicationPrivate::notify_helper (this=0x1080910, receiver=0x1c5c9f0, e=0x1c5b710) at kernel/qapplication.cpp:4481
#26 0x00007fe07783ffe1 in QApplication::notify (this=<value optimized out>, receiver=0x1c5c9f0, e=0x1c5b710) at kernel/qapplication.cpp:4360
#27 0x00007fe0797a9811 in KApplication::notify (this=0x7fff0200ef40, receiver=0x1c5c9f0, event=0x1c5b710) at /var/tmp/paludis/kde-base-kdelibs-4.7.3/work/kdelibs-4.7.3/kdeui/kernel/kapplication.cpp:311
#28 0x00007fe076e1812b in QCoreApplication::notifyInternal (this=0x7fff0200ef40, receiver=0x1c5c9f0, event=0x1c5b710) at kernel/qcoreapplication.cpp:787
#29 0x00007fe076e1c0a1 in sendEvent (receiver=0x0, event_type=0, data=0xefa9f0) at kernel/qcoreapplication.h:215
#30 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0xefa9f0) at kernel/qcoreapplication.cpp:1428
#31 0x00007fe076e461f3 in sendPostedEvents (s=0xf21250) at kernel/qcoreapplication.h:220
#32 postEventSourceDispatch (s=0xf21250) at kernel/qeventdispatcher_glib.cpp:277
#33 0x00007fe06fc95f3a in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#34 0x00007fe06fc96718 in g_main_context_iterate.clone.6 () from /usr/lib64/libglib-2.0.so.0
#35 0x00007fe06fc9697f in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#36 0x00007fe076e4635a in QEventDispatcherGlib::processEvents (this=0xefa1d0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#37 0x00007fe0778ec486 in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#38 0x00007fe076e16b92 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#39 0x00007fe076e16e14 in QEventLoop::exec (this=0x7fff0200eeb0, flags=...) at kernel/qeventloop.cpp:201
#40 0x00007fe076e1c37b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#41 0x000000000040d1f7 in main (argc=2, argv=0x7fff02011608) at /home/mikko/amarok/src/main.cpp:296
Comment 11 Mikko C. 2011-11-06 10:29:47 UTC
Btw, I'm also on Gentoo.
Comment 12 Matěj Laitl 2011-11-06 10:40:04 UTC
(In reply to comment #10)
> I'm also getting this crash every time on startup, a little bit after selecting
> the Amazon country.

Thanks for your report, Mikko. I believe that you are rather affected by bug 285720, which is about following assert:
ASSERT failure in QVector<T>::at: "index out of range"

This bug is rather about:
ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread.

But let me gues, you have debug USE-flag turnet on for qt-core package, dont you? Both of these bugs can be worked around by disabling debugging asserts in Qt.
Comment 13 Mikko C. 2011-11-06 10:45:02 UTC
ok, thanks I added my info to the other bug.
And yes, +debug is enabled in order to get more useful backtraces.
Comment 14 Matěj Laitl 2011-11-06 11:23:38 UTC
(In reply to comment #13)
> And yes, +debug is enabled in order to get more useful backtraces.

Mikko, this is a common misconception in Gentoo. USE=debug means "enable assertions and debugging output useful for developers", in order to create useful backtraces, FEATURES=splitdebug and -ggdb in CFLAGS suffices. See http://www.gentoo.org/proj/en/qa/backtraces.xml section debug USE flag.
Comment 15 Matěj Laitl 2011-11-06 17:25:21 UTC
Git commit 5580f735cfadea341d75470c4a83ac91bcef073d by Matěj Laitl.
Committed on 06/11/2011 at 17:30.
Pushed by laitl into branch 'master'.

Do not crash in Hander::Capability constructor in Qt debug builds

Hander::Capability::Capability() used to have following code:
moveToThread( hander->thread() );
setParent( handler );

This unfortunately asserts with: ASSERT failure in QCoreApplication
::sendEvent: Cannot send events to objects owned by a different thread
in debugging Qt builds.

Put setParent() call into a slot, and emit a signal to trigger it so
that it is called in object's new thread.

This should fix bug 279798, but it cannot be tested in current master
until bug 285720 is resolved.

BUG: 279798
FIXED-IN: 2.5

M  +1    -0    ChangeLog
M  +2    -0    src/core-impl/collections/mediadevicecollection/MediaDeviceMeta.cpp
M  +17   -7    src/core-impl/collections/mediadevicecollection/handler/MediaDeviceHandlerCapability.cpp
M  +26   -6    src/core-impl/collections/mediadevicecollection/handler/MediaDeviceHandlerCapability.h

http://commits.kde.org/amarok/5580f735cfadea341d75470c4a83ac91bcef073d