Version: (using Devel) Installed from: Compiled sources Compiler: gcc version 4.1.2 20070214 OS: Linux Steps to reproduce: 1) open any program that has printing capabilites (e.g. kwrite) 2) Fire print Dialog (CTRL+P) 3) Select printer and click on "Properties" 4) See the printing Dialog (kdelibs r790019 kdebase r790102) crash with the attached backtrace Note 1: If I select print to file, the properties dialog works fine. Note 2: Selecting print to file -> Opening and closing the properties dialog, and selecting a printer crashes the program with a similar backtrace. Application: KWrite (kwrite), signal SIGABRT Using host libthread_db library "/lib/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread 0xb634a6d0 (LWP 26091)] [New Thread 0xb3cb5b90 (LWP 26096)] [New Thread 0xb44b6b90 (LWP 26095)] [KCrash handler] #6 0xffffe410 in __kernel_vsyscall () #7 0xb659b1f1 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #8 0xb659c9b8 in *__GI_abort () at abort.c:88 #9 0xb722aa45 in qt_message_output (msgType=QtFatalMsg, buf=0xbfd6815c "ASSERT failure in QList<T>::at: \"index out of range\", file ../../include/QtCore/../../src/corelib/tools/qlist.h, line 393") at global/qglobal.cpp:2047 #10 0xb722ab0a in qFatal ( msg=0xb7382f9c "ASSERT failure in %s: \"%s\", file %s, line %d") at global/qglobal.cpp:2249 #11 0xb722ab5c in qt_assert_x (where=0xb6f4d807 "QList<T>::at", what=0xb6f4d7f4 "index out of range", file=0xb6f4d590 "../../include/QtCore/../../src/corelib/tools/qlist.h", line=393) at global/qglobal.cpp:1829 #12 0xb6d90cac in QPPDOptionsModel::index (this=0x838ea68, row=1, column=0, parent=@0xbfd6a298) at ../../include/QtCore/../../src/corelib/tools/qlist.h:393 #13 0xb6e57fad in QTreeViewPrivate::reexpandChildren (this=0x83b14f8, parent=@0xbfd6a298) at itemviews/qtreeview.cpp:3296 #14 0xb6e57d15 in QTreeViewPrivate::expand (this=0x83b14f8, item=4, emitSignal=true) at itemviews/qtreeview.cpp:2757 #15 0xb6e59406 in QTreeView::expand (this=0x83b14d8, index=@0xbfd6a36c) at itemviews/qtreeview.cpp:749 #16 0xb6d9076a in QPrintPropertiesDialog::selectPrinter (this=0x839cf90) at dialogs/qprintdialog_unix.cpp:316 #17 0xb6d9408d in QUnixPrintWidgetPrivate::_q_printerChanged (this=0x8350440, index=1) at dialogs/qprintdialog_unix.cpp:726 #18 0xb6d94580 in QUnixPrintWidget::qt_metacall (this=0x834e768, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfd6a50c) at .moc/debug-shared/moc_qprintdialog.cpp:68 #19 0xb73402c8 in QMetaObject::activate (sender=0x83508a0, from_signal_index=<value optimized out>, to_signal_index=32, argv=<value optimized out>) at kernel/qobject.cpp:2995 #20 0xb7340a44 in QMetaObject::activate (sender=0x83508a0, m=0xb71038b4, local_signal_index=5, argv=0xbfd6a50c) at kernel/qobject.cpp:3065 #21 0xb6c88b84 in QComboBox::currentIndexChanged (this=0x83508a0, _t1=1) at .moc/debug-shared/moc_qcombobox.cpp:278 #22 0xb6c8ae94 in QComboBoxPrivate::_q_emitCurrentIndexChanged ( this=0x8351128, index=@0x8386bd0) at widgets/qcombobox.cpp:1204 #23 0xb6c8ca62 in QComboBox::setCurrentIndex (this=0x83508a0, index=1) at widgets/qcombobox.cpp:1895 #24 0xb6c8d67e in QComboBoxPrivate::_q_itemSelected (this=0x8351128, item=@0xbfd6a7b0) at widgets/qcombobox.cpp:1173 #25 0xb6c9335a in QComboBox::qt_metacall (this=0x83508a0, _c=QMetaObject::InvokeMetaMethod, _id=39, _a=0xbfd6a6fc) at .moc/debug-shared/moc_qcombobox.cpp:168 #26 0xb73402c8 in QMetaObject::activate (sender=0x83926f0, from_signal_index=<value optimized out>, to_signal_index=27, argv=<value optimized out>) at kernel/qobject.cpp:2995 #27 0xb7340a44 in QMetaObject::activate (sender=0x83926f0, m=0xb7110294, local_signal_index=0, argv=0xbfd6a6fc) at kernel/qobject.cpp:3065 #28 0xb6f43ee1 in QComboBoxPrivateContainer::itemSelected (this=0x83926f0, _t1=@0xbfd6a7b0) at .moc/debug-shared/moc_qcombobox_p.cpp:193 #29 0xb6c8aca9 in QComboBoxPrivateContainer::eventFilter (this=0x83926f0, o=0x80be6e0, e=0xbfd6ad78) at widgets/qcombobox.cpp:662 #30 0xb732a11c in QCoreApplicationPrivate::sendThroughObjectEventFilters ( this=0x8057a68, receiver=0x80be6e0, event=0xbfd6ad78) at kernel/qcoreapplication.cpp:693 #31 0xb68eb6f6 in QApplicationPrivate::notify_helper (this=0x8057a68, receiver=0x80be6e0, e=0xbfd6ad78) at kernel/qapplication.cpp:3731 #32 0xb68ed59b in QApplication::notify (this=0xbfd6cc08, receiver=0x80be6e0, e=0xbfd6ad78) at kernel/qapplication.cpp:3464 #33 0xb79926c3 in KApplication::notify (this=0xbfd6cc08, receiver=0x80be6e0, event=0xbfd6ad78) at /var/tmp/portage/kde-base/kdelibs-9999.4/work/kdelibs-9999.4/kdeui/kernel/kapplication.cpp:311 #34 0xb7329cf7 in QCoreApplication::notifyInternal (this=0xbfd6cc08, receiver=0x80be6e0, event=0xbfd6ad78) at kernel/qcoreapplication.cpp:586 #35 0xb68f1482 in QApplicationPrivate::sendMouseEvent (receiver=0x80be6e0, event=0xbfd6ad78, alienWidget=0x80be6e0, nativeWidget=0x83926f0, buttonDown=0xb7116c40, lastMouseReceiver=@0xb7116c44) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #36 0xb695ce3e in QETWidget::translateMouseEvent (this=0x83926f0, event=0xbfd6b1e8) at kernel/qapplication_x11.cpp:4026 #37 0xb695b7ec in QApplication::x11ProcessEvent (this=0xbfd6cc08, event=0xbfd6b1e8) at kernel/qapplication_x11.cpp:3092 #38 0xb6983c75 in QEventDispatcherX11::processEvents (this=0x8057ba8, flags=@0xbfd6b2d4) at kernel/qeventdispatcher_x11.cpp:134 #39 0xb7328e61 in QEventLoop::processEvents (this=0xbfd6b34c, flags=@0xbfd6b308) at kernel/qeventloop.cpp:146 #40 0xb7328f8f in QEventLoop::exec (this=0xbfd6b34c, flags=@0xbfd6b358) at kernel/qeventloop.cpp:197 #41 0xb6dadbd7 in QDialog::exec (this=0x834d8f0) at dialogs/qdialog.cpp:453 #42 0xb6d93920 in QPrintDialog::exec (this=0x834d8f0) at dialogs/qprintdialog_unix.cpp:573 #43 0xb4dfe79d in KatePrinter::print (doc=0x81151d0) at /var/tmp/portage/kde-base/kdelibs-9999.4/work/kdelibs-9999.4/kate/utils/kateprinter.cpp:87 #44 0xb4d2106d in KateDocument::print (this=0x81151d0) at /var/tmp/portage/kde-base/kdelibs-9999.4/work/kdelibs-9999.4/kate/document/katedocument.cpp:3325 #45 0xb4d3567b in KateDocument::qt_metacall (this=0x81151d0, _c=QMetaObject::InvokeMetaMethod, _id=78, _a=0xbfd6babc) at /var/tmp/portage/kde-base/kdelibs-9999.4/work/kdelibs_build/kate/katedocument.moc:293 #46 0xb73402c8 in QMetaObject::activate (sender=0x81cbea0, from_signal_index=<value optimized out>, to_signal_index=6, argv=<value optimized out>) at kernel/qobject.cpp:2995 #47 0xb73407e2 in QMetaObject::activate (sender=0x81cbea0, m=0xb70ff9b8, from_local_signal_index=1, to_local_signal_index=2, argv=0xbfd6babc) at kernel/qobject.cpp:3085 #48 0xb68e3f63 in QAction::triggered (this=0x81cbea0, _t1=false) at .moc/debug-shared/moc_qaction.cpp:216 #49 0xb68e495d in QAction::activate (this=0x81cbea0, event=QAction::Trigger) at kernel/qaction.cpp:1129 #50 0xb6d144f1 in QMenuPrivate::activateAction (this=0x8297480, action=0x81cbea0, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1005 #51 0xb6d16aea in QMenu::mouseReleaseEvent (this=0x82a65c0, e=0xbfd6c368) at widgets/qmenu.cpp:2144 #52 0xb7a523f8 in KMenu::mouseReleaseEvent (this=0x82a65c0, e=0xbfd6c368) at /var/tmp/portage/kde-base/kdelibs-9999.4/work/kdelibs-9999.4/kdeui/widgets/kmenu.cpp:408 #53 0xb6949ef3 in QWidget::event (this=0x82a65c0, event=0xbfd6c368) at kernel/qwidget.cpp:6850 #54 0xb6d11b2f in QMenu::event (this=0x82a65c0, e=0xbfd6c368) at widgets/qmenu.cpp:2240 #55 0xb68eb71f in QApplicationPrivate::notify_helper (this=0x8057a68, receiver=0x82a65c0, e=0xbfd6c368) at kernel/qapplication.cpp:3735 #56 0xb68ed59b in QApplication::notify (this=0xbfd6cc08, receiver=0x82a65c0, e=0xbfd6c368) at kernel/qapplication.cpp:3464 #57 0xb79926c3 in KApplication::notify (this=0xbfd6cc08, receiver=0x82a65c0, event=0xbfd6c368) at /var/tmp/portage/kde-base/kdelibs-9999.4/work/kdelibs-9999.4/kdeui/kernel/kapplication.cpp:311 #58 0xb7329cf7 in QCoreApplication::notifyInternal (this=0xbfd6cc08, receiver=0x82a65c0, event=0xbfd6c368) at kernel/qcoreapplication.cpp:586 #59 0xb68f1482 in QApplicationPrivate::sendMouseEvent (receiver=0x82a65c0, event=0xbfd6c368, alienWidget=0x0, nativeWidget=0x82a65c0, buttonDown=0xb7116c40, lastMouseReceiver=@0xb7116c44) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #60 0xb695ce3e in QETWidget::translateMouseEvent (this=0x82a65c0, event=0xbfd6c7d8) at kernel/qapplication_x11.cpp:4026 #61 0xb695b7ec in QApplication::x11ProcessEvent (this=0xbfd6cc08, event=0xbfd6c7d8) at kernel/qapplication_x11.cpp:3092 #62 0xb6983c75 in QEventDispatcherX11::processEvents (this=0x8057ba8, flags=@0xbfd6c8c4) at kernel/qeventdispatcher_x11.cpp:134 #63 0xb7328e61 in QEventLoop::processEvents (this=0xbfd6c930, flags=@0xbfd6c8f8) at kernel/qeventloop.cpp:146 #64 0xb7328f8f in QEventLoop::exec (this=0xbfd6c930, flags=@0xbfd6c938) at kernel/qeventloop.cpp:197 #65 0xb732b476 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:838 #66 0xb68eae37 in QApplication::exec () at kernel/qapplication.cpp:3267 #67 0xb7f7dbd5 in kdemain (argc=1, argv=0xbfd6cfd4) at /var/tmp/portage/kde-base/kdebase-9999.4/work/kdebase-9999.4/apps/kwrite/kwritemain.cpp:786 #68 0x080487c2 in main (argc=) at /var/tmp/portage/kde-base/kdebase-9999.4/work/kdebase_build/apps/kwrite/kwrite_dummy.cpp:3 #69 0xb6587fdc in __libc_start_main (main=0x80487a0 <main>, argc=1, ubp_av=0xbfd6cfd4, init=0x80487f0 <__libc_csu_init>, fini=0x80487e0 <__libc_csu_fini>, rtld_fini=0xb7f94100 <_dl_fini>, stack_end=0xbfd6cfcc) at libc-start.c:229 #70 0x08048711 in _start () #0 0xffffe410 in __kernel_vsyscall ()
There is no kdeprint in KDE 4, yet.
Created attachment 24053 [details] Valgrind log for bug #159868 A valgrind log for this crash
This is an out-of-bounds access in QPPDOptionsModel, which is part of Qt (src/gui/dialogs/qprintdialog_unix.cpp). We need to make a testcase, test it with the latest Qt, and send it to Trolltech...
Works for me, and heard no other complaints, so assuming resolved upstream, unless you can provide sequence of actions to reproduce using latest Qt.