Summary: | segfault when repeatedly sorting | ||
---|---|---|---|
Product: | [Applications] trojita | Reporter: | Walter Lapchynski <wxl> |
Component: | Core | Assignee: | Trojita default assignee <trojita-bugs> |
Status: | CONFIRMED --- | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | git | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Walter Lapchynski
2018-10-16 03:17:28 UTC
I was able to get a backtrace after a long series of random clicking. This is with a random and pretty old snapshot of Qt. Thread 1 "trojita" received signal SIGSEGV, Segmentation fault. 0x00007ffff2625fa9 in QSortFilterProxyModelPrivate::proxy_to_source(QModelIndex const&) const () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/itemmodels/qsortfilterproxymodel.cpp:430 430 /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/itemmodels/qsortfilterproxymodel.cpp: No such file or directory. (gdb) bt #0 0x00007ffff2625fa9 in QSortFilterProxyModelPrivate::proxy_to_source(QModelIndex const&) const () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/itemmodels/qsortfilterproxymodel.cpp:430 #1 0x00007ffff2625fe1 in QSortFilterProxyModel::mapToSource (this=<optimized out>, proxyIndex=...) at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/itemmodels/qsortfilterproxymodel.cpp:2849 #2 0x00007ffff2624ee5 in QSortFilterProxyModel::flags (this=<optimized out>, index=...) at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/itemmodels/qsortfilterproxymodel.cpp:2329 #3 0x00007ffff35a4211 in QModelIndex::flags (this=0x7fffffffbcc0) at ../../include/QtCore/../../../qtwidgets-5.11.9999/src/corelib/itemmodels/qabstractitemmodel.h:458 #4 QTreeViewPrivate::isIndexExpanded (idx=..., this=0x555555c01620) at ../../include/QtWidgets/5.11.0/QtWidgets/private/../../../../../../qtwidgets-5.11.9999/src/widgets/itemviews/qtreeview_p.h:214 #5 QTreeView::isExpanded (this=this@entry=0x555555bfbe70, index=...) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qtreeview.cpp:841 #6 0x00007ffff35af1da in QTreeView::verticalScrollbarValueChanged (this=0x555555bfbe70, value=33) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qtreeview.cpp:4020 #7 0x00007ffff353e42f in QAbstractItemView::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qabstractitemview.cpp:422 #8 0x00007ffff267106b in QMetaObject::activate(QObject*, int, int, void**) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3771 #9 0x00007ffff2671677 in QMetaObject::activate (sender=sender@entry=0x555555c021d0, m=m@entry=0x7ffff39be960 <QAbstractSlider::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffbe50) at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3633 #10 0x00007ffff33de36e in QAbstractSlider::valueChanged (this=this@entry=0x555555c021d0, _t1=<optimized out>, _t1@entry=33) at .moc/moc_qabstractslider.cpp:304 #11 0x00007ffff33de9d4 in QAbstractSlider::setValue (this=0x555555c021d0, value=33) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/widgets/qabstractslider.cpp:546 #12 0x00007ffff26711af in QtPrivate::QSlotObjectBase::call (a=0x7fffffffbff0, r=0x7fffffffd3c0, this=0x555555d6f7a0) at ../../include/QtCore/../../../qtcore-5.11.9999/src/corelib/kernel/qobjectdefs_impl.h:376 #13 QMetaObject::activate(QObject*, int, int, void**) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3754 #14 0x00007ffff2671677 in QMetaObject::activate (sender=sender@entry=0x555555da9910, m=m@entry=0x7ffff39b92e0 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=4, argv=argv@entry=0x7fffffffbff0) at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3633 #15 0x00007ffff32f0c12 in QAction::toggled (this=this@entry=0x555555da9910, _t1=<optimized out>, _t1@entry=false) at .moc/moc_qaction.cpp:389 #16 0x00007ffff32f300e in QAction::setChecked (this=0x555555da9910, b=b@entry=false) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qaction.cpp:983 #17 0x00007ffff32f43da in QActionGroupPrivate::_q_actionChanged (this=0x555555d9ec40) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qactiongroup.cpp:77 #18 0x00007ffff32f48c1 in QActionGroup::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qactiongroup.h:56 #19 0x00007ffff267106b in QMetaObject::activate(QObject*, int, int, void**) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3771 #20 0x00007ffff2671677 in QMetaObject::activate (sender=sender@entry=0x555555d9d530, m=m@entry=0x7ffff39b92e0 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3633 #21 0x00007ffff32f0b50 in QAction::changed (this=this@entry=0x555555d9d530) at .moc/moc_qaction.cpp:369 #22 0x00007ffff32f268d in QActionPrivate::sendDataChanged (this=this@entry=0x555555d9fab0) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qaction.cpp:127 #23 0x00007ffff32f2ff5 in QAction::setChecked (this=0x555555d9d530, b=<optimized out>) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qaction.cpp:981 #24 0x00007ffff26711af in QtPrivate::QSlotObjectBase::call (a=0x7fffffffc320, r=0x7fffffffd3c0, this=0x555555cdeaa0) at ../../include/QtCore/../../../qtcore-5.11.9999/src/corelib/kernel/qobjectdefs_impl.h:376 #25 QMetaObject::activate(QObject*, int, int, void**) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3754 #26 0x000055555579d50c in Imap::Mailbox::PrettyMsgListModel::sortingPreferenceChanged(int, Qt::SortOrder) () #27 0x00005555557491a0 in Imap::Mailbox::PrettyMsgListModel::sort(int, Qt::SortOrder) () #28 0x00007ffff267106b in QMetaObject::activate(QObject*, int, int, void**) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3771 #29 0x00007ffff2671677 in QMetaObject::activate (sender=sender@entry=0x555555c27530, m=m@entry=0x7ffff39d7d20 <QHeaderView::staticMetaObject>, local_signal_index=local_signal_index@entry=9, argv=argv@entry=0x7fffffffc490) at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qobject.cpp:3633 #30 0x00007ffff3549a4f in QHeaderView::sortIndicatorChanged (this=this@entry=0x555555c27530, _t1=<optimized out>, _t1@entry=2, _t2=<optimized out>, _t2@entry=Qt::AscendingOrder) at .moc/moc_qheaderview.cpp:505 #31 0x00007ffff3552f45 in QHeaderView::setSortIndicator (this=this@entry=0x555555c27530, logicalIndex=logicalIndex@entry=2, order=order@entry=Qt::AscendingOrder) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qheaderview.cpp:1489 #32 0x00007ffff3553075 in QHeaderViewPrivate::flipSortIndicator (this=this@entry=0x555555c27570, section=section@entry=2) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qheaderview.cpp:3714 #33 0x00007ffff35532ea in QHeaderView::mouseReleaseEvent (this=0x555555c27530, e=<optimized out>) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qheaderview.cpp:2776 #34 0x00007ffff3334c48 in QWidget::event (this=this@entry=0x555555c27530, event=event@entry=0x7fffffffcb60) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qwidget.cpp:8916 #35 0x00007ffff33d6b3e in QFrame::event (this=0x555555c27530, e=0x7fffffffcb60) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/widgets/qframe.cpp:550 #36 0x00007ffff3545b9b in QAbstractItemView::viewportEvent (this=this@entry=0x555555c27530, event=event@entry=0x7fffffffcb60) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qabstractitemview.cpp:1748 #37 0x00007ffff3554a2b in QHeaderView::viewportEvent (this=0x555555c27530, e=0x7fffffffcb60) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/itemviews/qheaderview.cpp:2898 #38 0x00007ffff264975e in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qcoreapplication.cpp:1174 #39 0x00007ffff32f6f41 in QApplicationPrivate::notify_helper (this=this@entry=0x555555b1bf50, receiver=receiver@entry=0x555555c272b0, e=e@entry=0x7fffffffcb60) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qapplication.cpp:3721 #40 0x00007ffff32fe6e7 in QApplication::notify(QObject*, QEvent*) () at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qapplication.cpp:3201 #41 0x00007ffff2649911 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qcoreapplication.cpp:1048 #42 0x00007ffff32fda20 in QCoreApplication::sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../../qtwidgets-5.11.9999/src/corelib/kernel/qcoreapplication.h:234 #43 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x555555c272b0, event=event@entry=0x7fffffffcb60, alienWidget=alienWidget@entry=0x555555c272b0, nativeWidget=0x7fffffffd3c0, buttonDown=buttonDown@entry=0x7ffff39e8390 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qapplication.cpp:2693 #44 0x00007ffff334f2f8 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qwidgetwindow.cpp:659 #45 0x00007ffff3351c50 in QWidgetWindow::event (this=0x555555d24650, event=0x7fffffffcf40) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qwidgetwindow.cpp:281 #46 0x00007ffff32f6f51 in QApplicationPrivate::notify_helper (this=this@entry=0x555555b1bf50, receiver=receiver@entry=0x555555d24650, e=e@entry=0x7fffffffcf40) at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qapplication.cpp:3725 #47 0x00007ffff32fe4a0 in QApplication::notify(QObject*, QEvent*) () at /var/tmp/portage/dev-qt/qtwidgets-5.11.9999/work/qtwidgets-5.11.9999/src/widgets/kernel/qapplication.cpp:3484 #48 0x00007ffff2649911 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qcoreapplication.cpp:1048 #49 0x00007ffff2bd2a44 in QCoreApplication::sendSpontaneousEvent (event=0x7fffffffcf40, receiver=0x555555d24650) at ../../include/QtCore/../../../qtgui-5.11.9999/src/corelib/kernel/qcoreapplication.h:237 #50 QGuiApplicationPrivate::processMouseEvent (e=0x55555609af70) at /var/tmp/portage/dev-qt/qtgui-5.11.9999/work/qtgui-5.11.9999/src/gui/kernel/qguiapplication.cpp:2070 #51 0x00007ffff2bd4a15 in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x55555609af70) at /var/tmp/portage/dev-qt/qtgui-5.11.9999/work/qtgui-5.11.9999/src/gui/kernel/qguiapplication.cpp:1805 #52 0x00007ffff2baf19a in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at /var/tmp/portage/dev-qt/qtgui-5.11.9999/work/qtgui-5.11.9999/src/gui/kernel/qwindowsysteminterface.cpp:1028 #53 0x00007fffe61a07ec in QPAEventDispatcherGlib::processEvents (this=0x555555b78e70, flags=...) at /var/tmp/portage/dev-qt/qtgui-5.11.9999/work/qtgui-5.11.9999/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp:70 #54 0x00007ffff2648903 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at ../../include/QtCore/../../../qtcore-5.11.9999/src/corelib/global/qflags.h:71 #55 0x00007ffff265066f in QCoreApplication::exec() () at /var/tmp/portage/dev-qt/qtcore-5.11.9999/work/qtcore-5.11.9999/src/corelib/kernel/qcoreapplication.cpp:1336 #56 0x00005555555ef1f4 in main () Can you get this reproduced under something like an ASAN? One piece of information I failed to include: it seems to require at least 10 messages. After some further testing that involved increasing the memory allocation on the VMs I was using, I found that there seems to be some relationship between the amount of messages required to trigger it and the amount of memory. It's probably based more on size of messages (or mailbox/folder) rather than individual numbers of messages from what I can tell. Anyways, similar backtrace with b94f4307. Thread 1 "trojita" received signal SIGSEGV, Segmentation fault. 0x00007ffff3eeda82 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5 (gdb) backs[Ktrace full #0 0x00007ffff3eeda82 in () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #1 0x00007ffff3eee056 in QSortFilterProxyModel::flags(QModelIndex const&) const () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #2 0x00007ffff4b3fc71 in QTreeView::isExpanded(QModelIndex const&) const () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #3 0x00007ffff4b4ace5 in QTreeView::verticalScrollbarValueChanged(int) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #4 0x00007ffff4ad9d5f in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #5 0x00007ffff3f3f5c6 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #6 0x00007ffff49778ae in QAbstractSlider::valueChanged(int) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #7 0x00007ffff4977f14 in QAbstractSlider::setValue(int) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #8 0x00007ffff3f3f703 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #9 0x00007ffff4887f62 in QAction::toggled(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #10 0x00007ffff488a3b0 in QAction::setChecked(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #11 0x00007ffff488b79a in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #12 0x00007ffff488bc81 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #13 0x00007ffff3f3f5c6 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #14 0x00007ffff4889a2e in QActionPrivate::sendDataChanged() () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #15 0x00007ffff488a397 in QAction::setChecked(bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #16 0x00007ffff3f3f703 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #17 0x000055555578451c in Imap::Mailbox::PrettyMsgListModel::sortingPreferenceChanged(int, Qt::SortOrder) (this=this@entry=0x555555c80630, _t1=<optimized out>, _t1@entry=2, _t2=<optimized out>, _t2@entry=Qt::AscendingOrder) at /home/lubuntu/trojita/_build/Imap_autogen/I7YDGANZM2/moc_PrettyMsgListModel.cpp:131 _a = {0x0, 0x7fffffffca2c, 0x7fffffffca28} #18 0x0000555555735ff3 in Imap::Mailbox::PrettyMsgListModel::sort(int, Qt::SortOrder) (this=0x555555c80630, column=2, order=Qt::AscendingOrder) at /home/lubuntu/trojita/src/Imap/Model/PrettyMsgListModel.cpp:244 threadingModel = <optimized out> criterium = Imap::Mailbox::ThreadingMsgListModel::SORT_FROM willSort = true #19 0x00007ffff3f3f5c6 in QMetaObject::activate(QObject*, int, int, void**) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #20 0x00007ffff4ae536f in QHeaderView::sortIndicatorChanged(int, Qt::SortOrder) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #21 0x00007ffff4aee975 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #22 0x00007ffff4aeebfa in QHeaderView::mouseReleaseEvent(QMouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #23 0x00007ffff48cc748 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #24 0x00007ffff496ff4e in QFrame::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #25 0x00007ffff4ae149b in QAbstractItemView::viewportEvent(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #26 0x00007ffff4af038b in QHeaderView::viewportEvent(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #27 0x00007ffff3f1618b in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #28 0x00007ffff488e481 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #29 0x00007ffff4895d08 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #30 0x00007ffff3f16479 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #31 0x00007ffff4895019 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #32 0x00007ffff48e7264 in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #33 0x00007ffff48e9dee in () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #34 0x00007ffff488e491 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #35 0x00007ffff4895ac0 in QApplication::notify(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #36 0x00007ffff3f16479 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #37 0x00007ffff42bfa6b in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5 #38 0x00007ffff42c1925 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5 #39 0x00007ffff429bd3b in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5 #40 0x00007fffedfee8db in () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #41 0x00007ffff3f1514b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #42 0x00007ffff3f1d2b2 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5 #43 0x00005555555e647c in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/lubuntu/trojita/src/Gui/main.cpp:218 Oh and I'm not super familiar with ASan but if I grok the docs correctly, a simple -fsanitize=address to cmake should make things work and I didn't really notice anything different. Smells like you'd have to trigger multiple sorts within one event cycle, possibly due to some scheduled model sanitation at cycle starts/ends? => Try to limit the sorting to once per event cycle (eg. w/ a flag and a scheduled λ to clear it) Discovered a new quirk today: the smaller the window size, the more likely the problem is to occur. |