Summary: | Kmix crash while removing usb-soundcard [QString, KMixWindow::unplugged, ..., KMixDeviceManager::unplugged] | ||
---|---|---|---|
Product: | [Applications] kmix | Reporter: | Clemens Eisserer <linuxhippy> |
Component: | general | Assignee: | Christian Esken <esken> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | andresbajotierra, lamarque, oleg.atamanenko+kde, rbowers28, utgarda |
Priority: | HI | ||
Version First Reported In: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 4.6.1 | |
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi
Bugfix / Patch |
Description
Clemens Eisserer
2009-11-19 11:15:04 UTC
The backtrace doesn't have too much information about KMix :-\ I have already installed the corresponding debuginfo-packages, and will add another backtrace as soon as it occurs again. Ok, here's another one: Application: KMix (kmix), signal: Segmentation fault The current source language is "auto; currently c". [KCrash Handler] #6 QString (other=..., this=0xbf942680) at /usr/include/QtCore/qstring.h:711 #7 KMixWindow::unplugged (other=..., this=0xbf942680) at /usr/src/debug/kdemultimedia-4.3.3/kmix/kmix.cpp:489 #8 0x06399ed5 in KMixWindow::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>) at /usr/src/debug/kdemultimedia-4.3.3/i686-redhat-linux-gnu/kmix/kmix.moc:106 #9 0x02e72c0c in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 #10 0x02e73843 in QMetaObject::activate (sender=<value optimized out>, m=<value optimized out>, local_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3186 #11 0x063c2f34 in KMixDeviceManager::unplugged (this=<value optimized out>, _t1=<value optimized out>) at /usr/src/debug/kdemultimedia-4.3.3/i686-redhat-linux-gnu/kmix/kmixdevicemanager.moc:96 #12 0x063c304c in KMixDeviceManager::unpluggedSlot (this=<value optimized out>, udi=<value optimized out>) at /usr/src/debug/kdemultimedia-4.3.3/kmix/kmixdevicemanager.cpp:164 #13 0x063c425c in KMixDeviceManager::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>) at /usr/src/debug/kdemultimedia-4.3.3/i686-redhat-linux-gnu/kmix/kmixdevicemanager.moc:77 #14 0x02e72c0c in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 #15 0x02e73843 in QMetaObject::activate (sender=<value optimized out>, m=<value optimized out>, local_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3186 #16 0x06b4e794 in Solid::DeviceNotifier::deviceRemoved (this=<value optimized out>, _t1=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/i686-redhat-linux-gnu/solid/solid/devicenotifier.moc:88 #17 0x06b505ed in Solid::DeviceManagerPrivate::_k_deviceRemoved (this=<value optimized out>, udi=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/solid/solid/devicemanager.cpp:186 #18 0x06b50a45 in Solid::DeviceManagerPrivate::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/i686-redhat-linux-gnu/solid/solid/devicemanager_p.moc:74 #19 0x02e72c0c in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3112 #20 0x02e73843 in QMetaObject::activate (sender=<value optimized out>, m=<value optimized out>, local_signal_index=<value optimized out>, argv=<value optimized out>) at kernel/qobject.cpp:3186 #21 0x06b637f4 in Solid::Ifaces::DeviceManager::deviceRemoved (this=<value optimized out>, _t1=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/i686-redhat-linux-gnu/solid/solid/ifaces/devicemanager.moc:88 #22 0x06b89172 in Solid::Backends::Hal::HalManager::slotDeviceRemoved (this=<value optimized out>, udi=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/solid/solid/backends/hal/halmanager.cpp:219 #23 0x06b8925a in Solid::Backends::Hal::HalManager::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/i686-redhat-linux-gnu/solid/solid/backends/hal/halmanager.moc:72 #24 0x07f7aa3c in QDBusConnectionPrivate::deliverCall (this=<value optimized out>, object=<value optimized out>, msg=<value optimized out>, metaTypes=<value optimized out>, slotIdx=<value optimized out>) at qdbusintegrator.cpp:891 #25 0x07f829a8 in QDBusCallDeliveryEvent::placeMetaCall(QObject*) () from /usr/lib/libQtDBus.so.4 #26 0x02e6cf96 in QObject::event (this=<value optimized out>, e=<value optimized out>) at kernel/qobject.cpp:1110 #27 0x0344fb24 in QApplicationPrivate::notify_helper (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:4065 #28 0x03457281 in QApplication::notify (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:3605 #29 0x0721402b in KApplication::notify (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at /usr/src/debug/kdelibs-4.3.3/kdeui/kernel/kapplication.cpp:302 #30 0x02e5cd73 in QCoreApplication::notifyInternal (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at kernel/qcoreapplication.cpp:610 #31 0x02e5d972 in sendEvent (event=<value optimized out>, receiver=<value optimized out>) at kernel/qcoreapplication.h:213 #32 QCoreApplicationPrivate::sendPostedEvents (event=<value optimized out>, receiver=<value optimized out>) at kernel/qcoreapplication.cpp:1247 #33 0x02e5db2e in QCoreApplication::sendPostedEvents (receiver=<value optimized out>, event_type=<value optimized out>) at kernel/qcoreapplication.cpp:1140 #34 0x02e87f40 in sendPostedEvents () at kernel/qcoreapplication.h:218 #35 postEventSourceDispatch () at kernel/qeventdispatcher_glib.cpp:210 #36 0x00ac4118 in g_main_dispatch (context=<value optimized out>) at gmain.c:1960 #37 IA__g_main_context_dispatch (context=<value optimized out>) at gmain.c:2513 #38 0x00ac7a48 in g_main_context_iterate (context=<value optimized out>, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at gmain.c:2591 #39 0x00ac7b74 in IA__g_main_context_iteration (context=0x9961e90, may_block=<value optimized out>) at gmain.c:2654 #40 0x02e87b6d in QEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:327 #41 0x034ef356 in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202 #42 0x02e5b2aa in QEventLoop::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:149 #43 0x02e5b70a in QEventLoop::exec (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:201 #44 0x02e5dbf7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888 #45 0x0344f9a8 in QApplication::exec () at kernel/qapplication.cpp:3525 #46 0x063966a3 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/debug/kdemultimedia-4.3.3/kmix/main.cpp:71 #47 0x0804865c in main (argc=<value optimized out>, argv=<value optimized out>) at /usr/src/debug/kdemultimedia-4.3.3/i686-redhat-linux-gnu/kmix/kmix_dummy.cpp:3 Thanks Created attachment 42978 [details]
New crash information added by DrKonqi
KMix crashed when I restarted my E-MU 0404 USB Sound Card.
Thanks for the backtraces, the crash happens, when the following 3 conditions come together: - The Card with the Master gets unplugged - There is another soundcard installed - The other soundcard does not have a Master ("---no-master-detected---"). The bug is quite likely in the following line: QString localMaster = ((Mixer::mixers())[0])->getLocalMasterMD()->id(); What to do (ideas): - Guard ALL getLocalMasterMD() calls - Possibly continue searching even more soundcards - Finally if there is really really no master, do something like in the already handled "no more soundcards case"). *** Bug 251805 has been marked as a duplicate of this bug. *** Fixed by guarding ALL getLocalMasterMD() calls. Timeline: - Fixed in trunk - Will be fixed in KDE4.6.1 (commit pending, patch attached). Created attachment 55474 [details]
Bugfix / Patch
Has the fix really reached 4.6.1? Can I close this bug? |