Application that crashed: k3b Version of the application: 1.67.0 KDE Version: 4.2.98 (KDE 4.2.98 (KDE 4.3 RC3)) "release 147" Qt Version: 4.5.2 Operating System: Linux 2.6.27.25-0.1-pae i686 Distribution: "openSUSE 11.1 (i586)" What I was doing when the application crashed: I'm using k3b Version 1.67.0 (Using KDE 4.2.98 (KDE 4.2.98 (KDE 4.3 RC3)) "release 147") My computer is a Dell Inspiron 1545 and it has a 'Optiarc DVD+-RW AD-7560S' drive. k3b always crashes when i follow this steps: 1 - Open k3b 2 - Go to Settings -> Configure k3b 3 - Go to Devices 4 - Push Refresh Then the application crashes. -- Backtrace: Application: K3b (k3b), signal: Segmentation fault [KCrash Handler] #6 0xb7ff9c3b in K3b::Device::Device::blockDeviceName (this=0x838f4d0) at /usr/include/QtCore/qstring.h:711 #7 0xb7eb76da in K3b::MediaCache::clearDeviceList (this=0x82d7c48) at /usr/src/debug/k3b-1.66.0/libk3b/tools/k3bmediacache.cpp:325 #8 0xb7eb7e2b in K3b::MediaCache::buildDeviceList (this=0x82d7c48, dm=0x82f4398) at /usr/src/debug/k3b-1.66.0/libk3b/tools/k3bmediacache.cpp:342 #9 0xb7eb8364 in K3b::MediaCache::qt_metacall (this=0x82d7c48, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0xbfc4144c) at /usr/src/debug/k3b-1.66.0/build/libk3b/k3bmediacache.moc:84 #10 0xb5b97788 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4 #11 0xb5b98412 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 #12 0xb80179f3 in K3b::Device::DeviceManager::changed (this=0x82f4398, _t1=0x82f4398) at /usr/src/debug/k3b-1.66.0/build/libk3bdevice/k3bdevicemanager.moc:102 #13 0xb801838b in K3b::Device::DeviceManager::clear (this=0x82f4398) at /usr/src/debug/k3b-1.66.0/libk3bdevice/k3bdevicemanager.cpp:291 #14 0x080896bf in K3b::DeviceOptionTab::slotRefreshButtonClicked (this=0x8902938) at /usr/src/debug/k3b-1.66.0/src/option/k3bdeviceoptiontab.cpp:85 #15 0x0808973d in K3b::DeviceOptionTab::qt_metacall (this=0x8902938, _c=QMetaObject::InvokeMetaMethod, _id=-1077669296, _a=0xbfc41548) at /usr/src/debug/k3b-1.66.0/build/src/k3bdeviceoptiontab.moc:66 #16 0xb5b97788 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4 #17 0xb5b98412 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 #18 0x0808d839 in K3b::DeviceWidget::refreshButtonClicked (this=0x8905378) at /usr/src/debug/k3b-1.66.0/build/src/k3bdevicewidget.moc:84 #19 0x0808ff9d in K3b::DeviceWidget::qt_metacall (this=0x8905378, _c=QMetaObject::InvokeMetaMethod, _id=-1077669296, _a=0xbfc416ac) at /usr/src/debug/k3b-1.66.0/build/src/k3bdevicewidget.moc:71 #20 0xb5b97788 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4 #21 0xb5b97bc0 in QMetaObject::activate(QObject*, QMetaObject const*, int, int, void**) () from /usr/lib/libQtCore.so.4 #22 0xb5829d41 in QAbstractButton::clicked(bool) () from /usr/lib/libQtGui.so.4 #23 0xb5551509 in ?? () from /usr/lib/libQtGui.so.4 #24 0xb5553104 in ?? () from /usr/lib/libQtGui.so.4 #25 0xb5553396 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4 #26 0xb520f3d3 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4 #27 0xb55513ae in QAbstractButton::event(QEvent*) () from /usr/lib/libQtGui.so.4 #28 0xb55fc000 in QPushButton::event(QEvent*) () from /usr/lib/libQtGui.so.4 #29 0xb51b87fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 #30 0xb51c1461 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 #31 0xb616b27d in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5 #32 0xb5b8216b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4 #33 0xb51c04ce in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) () from /usr/lib/libQtGui.so.4 #34 0xb52306e6 in ?? () from /usr/lib/libQtGui.so.4 #35 0xb522fab5 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4 #36 0xb52595ca in ?? () from /usr/lib/libQtGui.so.4 #37 0xb49a89c8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #38 0xb49ac083 in ?? () from /usr/lib/libglib-2.0.so.0 #39 0xb49ac241 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #40 0xb5bad8d8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #41 0xb5258cc5 in ?? () from /usr/lib/libQtGui.so.4 #42 0xb5b8078a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #43 0xb5b80bd2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #44 0xb568a7f3 in QDialog::exec() () from /usr/lib/libQtGui.so.4 #45 0x08167fec in K3b::MainWindow::slotSettingsConfigure (this=0x823b660) at /usr/src/debug/k3b-1.66.0/src/k3b.cpp:1033 #46 0x0817002d in K3b::MainWindow::qt_metacall (this=0x823b660, _c=QMetaObject::InvokeMetaMethod, _id=38, _a=0xbfc4373c) at /usr/src/debug/k3b-1.66.0/build/src/k3b.moc:196 #47 0xb5b97788 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQtCore.so.4 #48 0xb5b97bc0 in QMetaObject::activate(QObject*, QMetaObject const*, int, int, void**) () from /usr/lib/libQtCore.so.4 #49 0xb51b2181 in QAction::triggered(bool) () from /usr/lib/libQtGui.so.4 #50 0xb51b36ff in QAction::activate(QAction::ActionEvent) () from /usr/lib/libQtGui.so.4 #51 0xb55e5064 in ?? () from /usr/lib/libQtGui.so.4 #52 0xb55eb81b in ?? () from /usr/lib/libQtGui.so.4 #53 0xb55ec362 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4 #54 0xb6252df5 in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libkdeui.so.5 #55 0xb520f3d3 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4 #56 0xb55ee619 in QMenu::event(QEvent*) () from /usr/lib/libQtGui.so.4 #57 0xb51b87fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 #58 0xb51c1461 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 #59 0xb616b27d in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5 #60 0xb5b8216b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4 #61 0xb51c04ce in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) () from /usr/lib/libQtGui.so.4 #62 0xb523096e in ?? () from /usr/lib/libQtGui.so.4 #63 0xb522fab5 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4 #64 0xb52595ca in ?? () from /usr/lib/libQtGui.so.4 #65 0xb49a89c8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #66 0xb49ac083 in ?? () from /usr/lib/libglib-2.0.so.0 #67 0xb49ac241 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #68 0xb5bad8d8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #69 0xb5258cc5 in ?? () from /usr/lib/libQtGui.so.4 #70 0xb5b8078a in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #71 0xb5b80bd2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 #72 0xb5b83079 in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4 #73 0xb51b8677 in QApplication::exec() () from /usr/lib/libQtGui.so.4 #74 0x081729b6 in main (argc=1, argv=0xbfc45bb4) at /usr/src/debug/k3b-1.66.0/src/main.cpp:160 Reported using DrKonqi
SVN commit 1025753 by mmalek: Release Device objects after "changed()" signals returns, not before. Curiously, comment in the code says exactly that, but it wasn't done that way :) BUG: 201659 M +3 -1 k3bdevicemanager.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1025753