With the latest qt-at-spi plugin up till v3.1, I stumbled across a segfault when closing KDE apps' about dialog. qt-4.8.0-7.fc16.x86_64 qt-at-spi-0.3.1-1.fc16.x86_64 kdelibs-4.7.4-1.fc16.x86_64 Filed here on request of Frederik Gladhorn, should be assigned to him. Reproducible: Always Steps to Reproduce: 1. Open Kwrite, Kate, Konqueror etc. 2. Go Help->About (Appname) 3. Close the dialog Actual Results: Segfault occurs, only with QT_ACCESSIBILITY set to 1. This does seem to be different problem then https://bugs.kde.org/show_bug.cgi?id=284005 Here's what goes out in stderr at that time: FIXME: handle dialog end. kwrite(23025) KWidgetItemDelegateEventListener::eventFilter: User of KWidgetItemDelegate should not delete widgets created by createItemWidgets! kwrite(23025) KWidgetItemDelegateEventListener::eventFilter: User of KWidgetItemDelegate should not delete widgets created by createItemWidgets! kwrite(23025) KWidgetItemDelegateEventListener::eventFilter: User of KWidgetItemDelegate should not delete widgets created by createItemWidgets! ... (repeats great number of times) KCrash: Application 'kwrite' crashing... KCrash: Attempting to start /usr/libexec/kde4/drkonqi from kdeinit sock_file=/home/vhumpa/.kde/socket-vhumpa/kdeinit4__1 Here goes backtrace taken from KCrash (with available debuginfos installed): Application: Kate (kate), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". 82 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [Current thread is 1 (Thread 0x7f61c284f840 (LWP 603))] Thread 3 (Thread 0x7f61b50d4700 (LWP 605)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:165 #1 0x00000036da984e62 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x36dac7e240) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359 #2 0x00000036da984e99 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464 #3 0x00000037b1e07d90 in start_thread (arg=0x7f61b50d4700) at pthread_create.c:309 #4 0x00000037b16f0f5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115 Thread 2 (Thread 0x7f61b3452700 (LWP 607)): #0 0x00000037b16ea403 in select () at ../sysdeps/unix/syscall-template.S:82 #1 0x00000036d29563cf in QProcessManager::run (this=0x36d2cce040) at io/qprocess_unix.cpp:244 #2 0x00000036d287bb6b in QThreadPrivate::start (arg=0x36d2cce040) at thread/qthread_unix.cpp:298 #3 0x00000037b1e07d90 in start_thread (arg=0x7f61b3452700) at pthread_create.c:309 #4 0x00000037b16f0f5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115 Thread 1 (Thread 0x7f61c284f840 (LWP 603)): [KCrash Handler] #6 0x0000000000000130 in ?? () #7 0x00000036d298c564 in QObject::disconnect (sender=0x13509f0, signal=0x159a299 "rowsInserted(QModelIndex,int,int)", receiver=0x1354750, method=0x1599539 "_k_slotRowsInserted(QModelIndex,int,int)") at kernel/qobject.cpp:2891 #8 0x00000031fda2fd16 in eventFilter (event=0x7fffd90e93a0, watched=0x1352590, this=0x13538a0) at /usr/src/debug/kdelibs-4.7.4/kdeui/itemviews/kwidgetitemdelegate.cpp:243 #9 KWidgetItemDelegatePrivate::eventFilter (this=0x13538a0, watched=0x1352590, event=0x7fffd90e93a0) at /usr/src/debug/kdelibs-4.7.4/kdeui/itemviews/kwidgetitemdelegate.cpp:226 #10 0x00000036d29791d8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<optimized out>, receiver=0x1352590, event=0x7fffd90e93a0) at kernel/qcoreapplication.cpp:986 #11 0x00000036d2fc995f in notify_helper (e=0x7fffd90e93a0, receiver=0x1352590, this=0xa367d0) at kernel/qapplication.cpp:4546 #12 QApplicationPrivate::notify_helper (this=0xa367d0, receiver=0x1352590, e=0x7fffd90e93a0) at kernel/qapplication.cpp:4522 #13 0x00000036d2fce813 in QApplication::notify (this=0x7fffd90ea410, receiver=0x1352590, e=0x7fffd90e93a0) at kernel/qapplication.cpp:4411 #14 0x00000031fda50766 in KApplication::notify (this=0x7fffd90ea410, receiver=0x1352590, event=0x7fffd90e93a0) at /usr/src/debug/kdelibs-4.7.4/kdeui/kernel/kapplication.cpp:311 #15 0x00000036d297904c in QCoreApplication::notifyInternal (this=0x7fffd90ea410, receiver=0x1352590, event=0x7fffd90e93a0) at kernel/qcoreapplication.cpp:876 #16 0x00000036d34d991d in sendEvent (event=0x7fffd90e93a0, receiver=0x1352590) at ../../src/corelib/kernel/qcoreapplication.h:231 #17 QAccessible::queryAccessibleInterface (object=0x1352590) at accessible/qaccessible.cpp:588 #18 0x00000036d34df66d in QAccessible::updateAccessibility (o=<optimized out>, who=0, reason=QAccessible::ObjectDestroyed) at accessible/qaccessible_unix.cpp:102 #19 0x00000036d301467f in QWidget::~QWidget (this=0x1352590, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1678 #20 0x00000036d3014949 in QWidget::~QWidget (this=0x1352590, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1699 #21 0x00000036d298b395 in QObjectPrivate::deleteChildren (this=0x1352080) at kernel/qobject.cpp:1908 #22 0x00000036d3014670 in QWidget::~QWidget (this=0x1351760, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1675 #23 0x00000031fd9cafbe in ~KAboutApplicationPersonListView (this=0x1351760, __in_chrg=<optimized out>) at /usr/src/debug/kdelibs-4.7.4/kdeui/dialogs/kaboutapplicationpersonlistview_p.h:26 #24 KDEPrivate::KAboutApplicationPersonListView::~KAboutApplicationPersonListView (this=0x1351760, __in_chrg=<optimized out>) at /usr/src/debug/kdelibs-4.7.4/kdeui/dialogs/kaboutapplicationpersonlistview_p.h:26 #25 0x00000036d298b395 in QObjectPrivate::deleteChildren (this=0x13505e0) at kernel/qobject.cpp:1908 #26 0x00000036d3014670 in QWidget::~QWidget (this=0x1224d40, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1675 #27 0x00000036d3014949 in QWidget::~QWidget (this=0x1224d40, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1699 #28 0x00000036d298b395 in QObjectPrivate::deleteChildren (this=0x1224910) at kernel/qobject.cpp:1908 #29 0x00000036d3014670 in QWidget::~QWidget (this=0x12248e0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1675 #30 0x00000036d342cc39 in QStackedWidget::~QStackedWidget (this=0x12248e0, __in_chrg=<optimized out>) at widgets/qstackedwidget.cpp:193 #31 0x00000036d298b395 in QObjectPrivate::deleteChildren (this=0x12246a0) at kernel/qobject.cpp:1908 #32 0x00000036d3014670 in QWidget::~QWidget (this=0x115e7d0, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1675 #33 0x00000036d3438659 in QTabWidget::~QTabWidget (this=0x115e7d0, __in_chrg=<optimized out>) at widgets/qtabwidget.cpp:367 #34 0x00000036d298b395 in QObjectPrivate::deleteChildren (this=0x13568f0) at kernel/qobject.cpp:1908 #35 0x00000036d3014670 in QWidget::~QWidget (this=0x1356570, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1675 #36 0x00000036d3014949 in QWidget::~QWidget (this=0x1356570, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1699 #37 0x00000036d298b395 in QObjectPrivate::deleteChildren (this=0x11b10d0) at kernel/qobject.cpp:1908 #38 0x00000036d3014670 in QWidget::~QWidget (this=0x103af20, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1675 #39 0x00000031fd9beb79 in KAboutApplicationDialog::~KAboutApplicationDialog (this=0x103af20, __in_chrg=<optimized out>) at /usr/src/debug/kdelibs-4.7.4/kdeui/dialogs/kaboutapplicationdialog.cpp:306 #40 0x00000031fdafc38e in KHelpMenu::timerExpired (this=0xec6840) at /usr/src/debug/kdelibs-4.7.4/kdeui/widgets/khelpmenu.cpp:347 #41 0x00000036d2991f16 in QObject::event (this=0xec6840, e=<optimized out>) at kernel/qobject.cpp:1195 #42 0x00000036d2fc9994 in notify_helper (e=0x14d31d0, receiver=0xec6840, this=0xa367d0) at kernel/qapplication.cpp:4550 #43 QApplicationPrivate::notify_helper (this=0xa367d0, receiver=0xec6840, e=0x14d31d0) at kernel/qapplication.cpp:4522 #44 0x00000036d2fce813 in QApplication::notify (this=0x7fffd90ea410, receiver=0xec6840, e=0x14d31d0) at kernel/qapplication.cpp:4411 #45 0x00000031fda50766 in KApplication::notify (this=0x7fffd90ea410, receiver=0xec6840, event=0x14d31d0) at /usr/src/debug/kdelibs-4.7.4/kdeui/kernel/kapplication.cpp:311 #46 0x00000036d297904c in QCoreApplication::notifyInternal (this=0x7fffd90ea410, receiver=0xec6840, event=0x14d31d0) at kernel/qcoreapplication.cpp:876 #47 0x00000036d297cada in sendEvent (event=0x14d31d0, receiver=0xec6840) at kernel/qcoreapplication.h:231 #48 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9f64b0) at kernel/qcoreapplication.cpp:1500 #49 0x00000036d29a7933 in sendPostedEvents () at kernel/qcoreapplication.h:236 #50 postEventSourceDispatch (s=0xa33e70) at kernel/qeventdispatcher_glib.cpp:279 #51 0x00000037b3244acd in g_main_dispatch (context=0xa329e0) at gmain.c:2441 #52 g_main_context_dispatch (context=0xa329e0) at gmain.c:3011 #53 0x00000037b32452c8 in g_main_context_iterate (context=0xa329e0, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3089 #54 0x00000037b324549c in g_main_context_iteration (context=0xa329e0, may_block=1) at gmain.c:3152 #55 0x00000036d29a7d5f in QEventDispatcherGlib::processEvents (this=0x9f7970, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424 #56 0x00000036d306c66e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:207 #57 0x00000036d2978182 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149 #58 0x00000036d29783d7 in QEventLoop::exec (this=0x7fffd90ea350, flags=...) at kernel/qeventloop.cpp:204 #59 0x00000036d297cdd5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148 #60 0x000000320060608d in kdemain () from /usr/lib64/libkdeinit4_kate.so #61 0x00000037b162169d in __libc_start_main (main=0x400730, argc=1, ubp_av=0x7fffd90eb948, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffd90eb938) at libc-start.c:226 #62 0x0000000000400761 in _start ()
This will be fixed in the upcomming Qt 4.8.2 release. See f99ab73f19e0e57e9c7defc67448c0bebbbe9b90 in Qt 4.8.