Details
-
Bug
-
Resolution: Duplicate
-
Not Evaluated
-
5.11.0
-
None
-
Linux x86_64, self built Qt 5.11.0
-
e15fc26e9fdbff141890a3e2e8dc4ef935d022a0
Description
Commit 1c0fcbc887459d8963088309e83303eb1a7d2db0 introduces a sagfault in subsurface ( https://github.com/Subsurface-divelog/subsurface ) when trying to add a new dive. To reproduce, go to Log -> Add dive, then click "Apply changes".
Backtrace:
(gdb) bt
#0 0x00007ffff04f8ba7 in QSortFilterProxyModelPrivate::index_to_iterator(QModelIndex const&) const (proxy_index=..., this=0x5555563a0850) at itemmodels/qsortfilterproxymodel.cpp:206
#1 0x00007ffff04f8ba7 in QSortFilterProxyModel::parent(QModelIndex const&) const (this=0x5555563a73b0, child=...)
at itemmodels/qsortfilterproxymodel.cpp:2000
#2 0x00007ffff28f2db7 in QModelIndex::parent() const (this=0x5555599a7768)
at ../../include/QtCore/../../src/corelib/itemmodels/qabstractitemmodel.h:421
#3 0x00007ffff28f2db7 in QTreeView::drawRow(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const (this=0x55555667e810, painter=0x7fffffffd3b8, option=..., index=...) at itemviews/qtreeview.cpp:1621
#4 0x00007ffff28f7d5a in QTreeView::drawTree(QPainter*, QRegion const&) const (this=this@entry=0x55555667e810, painter=painter@entry=0x7fffffffd3b8, region=...) at ../../include/QtCore/../../src/corelib/tools/qarraydata.h:61
#5 0x00007ffff28fbedf in QTreeView::paintEvent(QPaintEvent*) (this=0x55555667e810, event=0x7fffffffd910)
at ../../include/QtGui/../../src/gui/kernel/qevent.h:410
#6 0x00007ffff263bf71 in QWidget::event(QEvent*) (this=this@entry=0x55555667e810, event=event@entry=0x7fffffffd910)
at kernel/qwidget.cpp:8972
#7 0x00007ffff26f3b8c in QFrame::event(QEvent*) (this=this@entry=0x55555667e810, e=e@entry=0x7fffffffd910)
at widgets/qframe.cpp:550
#8 0x00007ffff26fd5cb in QAbstractScrollArea::viewportEvent(QEvent*) (this=this@entry=0x55555667e810, e=e@entry=0x7fffffffd910) at widgets/qabstractscrollarea.cpp:1208
#9 0x00007ffff288e344 in QAbstractItemView::viewportEvent(QEvent*) (this=this@entry=0x55555667e810, event=event@entry=0x7fffffffd910) at itemviews/qabstractitemview.cpp:1748
#10 0x00007ffff28fccc9 in QTreeView::viewportEvent(QEvent*) (this=0x55555667e810, event=0x7fffffffd910)
at itemviews/qtreeview.cpp:1326
#11 0x00007ffff26fdf89 in QAbstractScrollAreaPrivate::viewportEvent(QEvent*) (event=<optimized out>, this=<optimized out>)
at widgets/qabstractscrollarea_p.h:112
#12 0x00007ffff26fdf89 in QAbstractScrollAreaFilter::eventFilter(QObject*, QEvent*) (this=<optimized out>, o=<optimized out>, e=<optimized out>) at widgets/qabstractscrollarea_p.h:128
#13 0x00007ffff05333dc in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (receiver=receiver@entry=0x55555667c190, event=event@entry=0x7fffffffd910) at kernel/qcoreapplication.cpp:1168
#14 0x00007ffff25f41ef in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=
0x555555ca4dc0, receiver=receiver@entry=0x55555667c190, e=e@entry=0x7fffffffd910) at kernel/qapplication.cpp:3728
#15 0x00007ffff25fdea0 in QApplication::notify(QObject*, QEvent*) (this=0x555555ca4da0, receiver=0x55555667c190, e=0x7fffffffd910) at kernel/qapplication.cpp:3695
#16 0x00007ffff05335b9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=receiver@entry=0x55555667c190, event=event@entry=0x7fffffffd910) at kernel/qcoreapplication.cpp:1042
#17 0x00007ffff2634381 in QCoreApplication::sendSpontaneousEvent(QObject*, QEvent*) (event=0x7fffffffd910, receiver=0x55555667c190) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:237
#18 0x00007ffff2634381 in QWidgetPrivate::sendPaintEvent(QRegion const&) (this=this@entry=0x55555667eea0, toBePainted=...)
--Type <return> to continue, or q <return> to quit--
at kernel/qwidget.cpp:5687
#19 0x00007ffff2634c75 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x55555667eea0, pdev=<optimized out>, rgn=..., offset=..., flags=flags@entry=36, sharedPainter=sharedPainter@entry=0x0, backingStore=<optimized out>) at kernel/qwidget.cpp:5627
#20 0x00007ffff2605519 in QWidgetBackingStore::doSync() (this=this@entry=0x555556395390)
at kernel/qwidgetbackingstore.cpp:1369
#21 0x00007ffff2605884 in QWidgetBackingStore::sync() (this=0x555556395390) at kernel/qwidgetbackingstore.cpp:1156
#22 0x00007ffff26231b8 in QWidgetPrivate::syncBackingStore() (this=this@entry=0x555555ccd450) at kernel/qwidget.cpp:1959
#23 0x00007ffff263c489 in QWidget::event(QEvent*) (this=this@entry=0x555556183d80, event=event@entry=0x55555677b0d0)
at kernel/qwidget.cpp:9136
#24 0x00007ffff277342a in QMainWindow::event(QEvent*) (this=0x555556183d80, event=0x55555677b0d0)
at widgets/qmainwindow.cpp:1342
#25 0x00007ffff25f41ff in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x555555ca4dc0, receiver=receiver@entry=0x555556183d80, e=e@entry=0x55555677b0d0) at kernel/qapplication.cpp:3732
#26 0x00007ffff25fdea0 in QApplication::notify(QObject*, QEvent*) (this=0x555555ca4da0, receiver=0x555556183d80, e=0x55555677b0d0) at kernel/qapplication.cpp:3695
#27 0x00007ffff05335b9 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=receiver@entry=0x555556183d80, event=event@entry=0x55555677b0d0) at kernel/qcoreapplication.cpp:1042
#28 0x00007ffff05398e8 in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x55555677b0d0, receiver=0x555556183d80)
at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#29 0x00007ffff05398e8 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x555555c7da80) at kernel/qcoreapplication.cpp:1717
#30 0x00007ffff0539f70 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1571
#31 0x00007ffff0592fc0 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x555555d14f80)
at kernel/qeventdispatcher_glib.cpp:276
#32 0x00007fffea173368 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#33 0x00007fffea1735b1 in () at /usr/lib/libglib-2.0.so.0
#34 0x00007fffea17363e in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#35 0x00007ffff05928ca in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x555555d16e10, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#36 0x00007fffe1958465 in QPAEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x555555d16e10, flags=...) at qeventdispatcher_glib.cpp:69
#37 0x00007ffff053149f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffe330, flags=..., flags@entry=...) at /usr/include/c++/8.1.0/bits/atomic_base.h:707
#38 0x00007ffff05318f7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffe330, flags=flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:122
--Type <return> to continue, or q <return> to quit--
#39 0x00007ffff053b916 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#40 0x00007ffff17994a2 in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1687
#41 0x00007ffff25f416d in QApplication::exec() () at kernel/qapplication.cpp:2917
#42 0x000055555565aaf0 in main ()
Attachments
Issue Links
- duplicates
-
QTBUG-67948 Crash in QSortFilterProxyModel
- Closed
- is duplicated by
-
QTBUG-68581 [Regression] QSortFilterProxyModel::setSourceModel() fails to set a new source model
- Closed
-
QTBUG-70310 QSortFilterProxyModel::setSourceModel reverts to empty static model if old model is deleted
- Closed
For Gerrit Dashboard: QTBUG-68427 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
230462,2 | QSortFilterProxyModel: don't assert when old model gets destroyed | 5.11 | qt/qtbase | Status: MERGED | +2 | 0 |
230766,1 | QSortFilterProxyModel: don't assert when old model gets destroyed | dev | qt/qtbase | Status: ABANDONED | 0 | 0 |