https://bugs.kde.org/show_bug.cgi?id=402439
Bug ID: 402439 Summary: Model error with Kickoff RunnerModel Product: plasmashell Version: master Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: Application Launcher (Kickoff) Assignee: k...@davidedmundson.co.uk Reporter: k...@davidedmundson.co.uk CC: plasma-b...@kde.org Target Milestone: 1.0 In an attempt to check there's no bug our side with the common plasma crash in kickoff I attached QAbstractItemModelTester to our model. Unpredictably (one in every few launches) I do get a model error: #0 0x00007ffff1191d7f in raise () at /usr/lib/libc.so.6 #1 0x00007ffff117c672 in abort () at /usr/lib/libc.so.6 #2 0x00007ffff16eb25b in qt_message_fatal(QtMsgType, QMessageLogContext const&, QString const&) (context=..., message=...) at /home/david/projects/qt5/qtbase/src/corelib/global/qlogging.cpp:1840 #3 0x00007ffff16ebfe9 in QMessageLogger::fatal(char const*, ...) const (this=this@entry=0x7fffffffc260, msg=msg@entry=0x7fffcc048760 <QAbstractItemModelTesterPrivate::compare<QVariant, QVariant>(QVariant const&, QVariant const&, char const*, char const*, char const*, int)::formatString> "FAIL! Compared values are not the same:\n Actual (%s) %s\n Expected (%s) %s\n (%s:%d)") at /home/david/projects/qt5/qtbase/src/corelib/global/qlogging.cpp:880 #4 0x00007fffcc03dd77 in QAbstractItemModelTesterPrivate::compare<QVariant, QVariant>(QVariant const&, QVariant const&, char const*, char const*, char const*, int) (this=this@entry=0x555557fc1ab0, t1=..., t2=..., actual=actual@entry=0x7fffcc044830 "model->data(model->index(start - 1, 0, c.parent))", expected=expected@entry=0x7fffcc046112 "c.last", file=file@entry=0x7fffcc044500 "/home/david/projects/qt5/qtbase/src/testlib/qabstractitemmodeltester.cpp", line=746) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/global/qlogging.h:91 #5 0x00007fffcc03af0c in QAbstractItemModelTesterPrivate::rowsRemoved(QModelIndex const&, int, int) (this=0x555557fc1ab0, parent=..., start=16, end=25) at /usr/include/c++/8.2.1/bits/atomic_base.h:390 #6 0x00007fffcc03b141 in QAbstractItemModelTester::<lambda(const QModelIndex&, int, int)>::operator() (end=<optimized out>, start=<optimized out>, parent=..., __closure=<optimized out>) at /home/david/projects/qt5/qtbase/src/testlib/qabstractitemmodeltester.cpp:262 #7 0x00007fffcc03b141 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2>, QtPrivate::List<const QModelIndex&, int, int>, void, QAbstractItemModelTester::QAbstractItemModelTester(QAbstractItemModel*, QAbstractItemModelTester::FailureReportingMode, QObject*)::<lambda(const QModelIndex&, int, int)> >::call (arg=<optimized out>, f=...) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:128 #8 0x00007fffcc03b141 in QtPrivate::Functor<QAbstractItemModelTester::QAbstractItemModelTester(QAbstractItemModel*, QAbstractItemModelTester::FailureReportingMode, QObject*)::<lambda(const QModelIndex&, int, int)>, 3>::call<QtPrivate::List<QModelIndex const&, int, int>, void> (arg=<optimized out>, f=...) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:238 #9 0x00007fffcc03b141 in QtPrivate::QFunctorSlotObject<QAbstractItemModelTester::QAbstractItemModelTester(QAbstractItemModel*, QAbstractItemModelTester::FailureReportingMode, QObject*)::<lambda(const QModelIndex&, int, int)>, 3, QtPrivate::List<const QModelIndex&, int, int>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:421 #10 0x00007ffff18ee860 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=<optimized out>, r=0x555557f683c0, this=0x555558008b10) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:376 #11 0x00007ffff18ee860 in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x555558099cd0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=12, argv=argv@entry=0x7fffffffc4f0) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3754 #12 0x00007ffff18eecbd in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x555558099cd0, m=m@entry=0x7ffff1b6c4a0 <QAbstractItemModel::staticMetaObject>, local_signal_index=local_signal_index@entry=12, argv=argv@entry=0x7fffffffc4f0) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3633 #13 0x00007ffff1871245 in QAbstractItemModel::rowsRemoved(QModelIndex const&, int, int, QAbstractItemModel::QPrivateSignal) (this=this@entry=0x555558099cd0, _t1=..., _t2=<optimized out>, _t3=<optimized out>, _t4=...) at .moc/moc_qabstractitemmodel.cpp:601 #14 0x00007ffff18799f5 in QAbstractItemModel::endRemoveRows() (this=0x555558099cd0) at /home/david/projects/qt5/qtbase/src/corelib/itemmodels/qabstractitemmodel.cpp:2786 #15 0x00007fffc41a703a in RunnerMatchesModel::setMatches(QList<Plasma::QueryMatch> const&) (this=0x555558099cd0, matches=...) at /home/david/projects/kde5/src/kde/workspace/plasma-desktop/applets/kicker/plugin/runnermatchesmodel.cpp:241 #16 0x00007fffc41a0a0d in RunnerModel::matchesChanged(QList<Plasma::QueryMatch> const&) (this=0x555557d33220, matches=...) at /home/david/projects/kde5/src/kde/workspace/plasma-desktop/applets/kicker/plugin/runnermodel.cpp:264 #17 0x00007fffc41c0a1a in RunnerModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x555557d33220, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0x7fffffffcb50) at applets/kicker/kickerplugin_autogen/7RBZBFH7CH/moc_runnermodel.cpp:152 #18 0x00007ffff18eea1b in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x555557aac360, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffcb50) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3771 #19 0x00007ffff18eecbd in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=0x555557aac360, m=<optimized out>, local_signal_index=0, argv=0x7fffffffcb50) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3633 #20 0x00007fffb8feb8a3 in Plasma::RunnerManager::matchesChanged(QList<Plasma::QueryMatch> const&) (this=0x555557aac360, _t1=...) at src/KF5Runner_autogen/include/moc_runnermanager.cpp:191 #21 0x00007fffb8fee518 in Plasma::RunnerManagerPrivate::matchesChanged() (this=0x555557ab1310) at /home/david/projects/kde5/src/frameworks/krunner/src/runnermanager.cpp:92 #22 0x00007fffb8feb6f0 in Plasma::RunnerManager::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x555557aac360, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0x7fffffffcd20) at src/KF5Runner_autogen/include/moc_runnermanager.cpp:126 #23 0x00007ffff18eea1b in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x555557ab1338, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffcd20) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3771 #24 0x00007ffff18eecbd in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x555557ab1338, m=m@entry=0x7ffff1b6dca0 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fffffffcd20) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:3633 #25 0x00007ffff18fb9ab in QTimer::timeout(QTimer::QPrivateSignal) (this=this@entry=0x555557ab1338, _t1=...) at .moc/moc_qtimer.cpp:200 #26 0x00007ffff18fbbb1 in QTimer::timerEvent(QTimerEvent*) (this=0x555557ab1338, e=<optimized out>) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qtimer.cpp:255 #27 0x00007ffff18ef10c in QObject::event(QEvent*) (this=0x555557ab1338, e=<optimized out>) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qobject.cpp:1232 #28 0x00007ffff2ada46d in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x555555868560, receiver=receiver@entry=0x555557ab1338, e=e@entry=0x7fffffffd010) at /home/david/projects/qt5/qtbase/src/widgets/kernel/qapplication.cpp:3726 #29 0x00007ffff2ae236d in QApplication::notify(QObject*, QEvent*) (this=0x7fffffffd9e0, receiver=0x555557ab1338, e=0x7fffffffd010) at /home/david/projects/qt5/qtbase/src/widgets/kernel/qapplication.cpp:3098 #30 0x00007ffff18bd415 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x555557ab1338, event=event@entry=0x7fffffffd010) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qcoreapplication.cpp:1047 #31 0x00007ffff191bfe6 in QCoreApplication::sendEvent(QObject*, QEvent*) (event=0x7fffffffd010, receiver=<optimized out>) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/kernel/qcoreapplication.h:234 #32 0x00007ffff191bfe6 in QTimerInfoList::activateTimers() (this=0x5555558b3920) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:643 #33 0x00007ffff191c82c in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:182 #34 0x00007fffebe603cf in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0 #35 0x00007fffebe61f89 in () at /usr/lib/libglib-2.0.so.0 #36 0x00007fffebe61fce in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #37 0x00007ffff191cbbc in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5555558b86e0, flags=...) at /home/david/projects/qt5/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:422 #38 0x00007fffea31aebf in QPAEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5555558b86e0, flags=...) at /home/david/projects/qt5/qtbase/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp:69 #39 0x00007ffff18bb327 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffd290, flags=..., flags@entry=...) at /usr/include/c++/8.2.1/bits/atomic_base.h:707 #40 0x00007ffff18bb77f in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffd290, flags=flags@entry=...) at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/global/qflags.h:122 #41 0x00007ffff18c5872 in QCoreApplication::exec() () at ../../include/QtCore/../../../../qt5/qtbase/src/corelib/global/qflags.h:120 #42 0x00007ffff1c8e282 in QGuiApplication::exec() () at /home/david/projects/qt5/qtbase/src/gui/kernel/qguiapplication.cpp:1762 #43 0x00007ffff2ada3db in QApplication::exec() () at /home/david/projects/qt5/qtbase/src/widgets/kernel/qapplication.cpp:2900 #44 0x000055555557a99a in main(int, char**) (argc=2, argv=0x7fffffffdaf8) at /home/david/projects/kde5/src/kde/workspace/plasma-workspace/shell/main.cpp:212 Relevant patch on plasma-desktop to attach model tester: https://phabricator.kde.org/P283 Haven't investigated yet. -- You are receiving this mail because: You are watching all bug changes.