Sometimes if I click to enable or disable a collection in the Sources list, Zanshin dies. Reproducible: Sometimes Steps to Reproduce: -- Information about the crash: - What I was doing when the application crashed: 1) Lunch Zanshin (obviously) 2) enable or disable a collection listed under “Sources” Actual Results: 3) blammo! it crashes Expected Results: Not crash, obviously. Application: zanshin (0.2.80) KDE Platform Version: 4.14.5 (Compiled from sources) Qt Version: 4.8.6 Operating System: Linux 4.1.13-desktop-2.mga5 x86_64 Distribution: "Mageia 5" I haven’t noticed any other side-effects to this so far, but it’s still a bit annoying, since this is the only method to filter out or find todos that belong to a specific calendar (e.g. shared work vs., private calendar) The crash can be reproduced sometimes. -- Backtrace: Application: Zanshin Todo (zanshin), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [KCrash Handler] #5 0x00007ff6254b7b60 in QObject::setParent(QObject*) () at /lib64/libQtCore.so.4 #6 0x0000000000485862 in Presentation::ApplicationModel::setCurrentPage(QObject*) (this=0x0, this@entry=0xce5338, page=0x0) at /home/hook/tmp_build/zanshin-0.2.80/src/presentation/applicationmodel.cpp:90 #7 0x000000000048291c in Presentation::ApplicationModel::qt_metacall(QMetaObject::Call, int, void**) (this=0xce5338, _c=QMetaObject::WriteProperty, _id=2, _a=0x7ffffa66f340) at /home/hook/tmp_build/zanshin-0.2.80/src/src/presentation/moc_applicationmodel.cpp:126 #8 0x00007ff6254a8658 in QMetaProperty::write(QObject*, QVariant const&) const () at /lib64/libQtCore.so.4 #9 0x00007ff6254b84ef in QObject::setProperty(char const*, QVariant const&) () at /lib64/libQtCore.so.4 #10 0x00000000004b9c1d in Widgets::ApplicationComponents::onCurrentPageChanged(QObject*) (this=0xd40b90, page=0x0) at /home/hook/tmp_build/zanshin-0.2.80/src/widgets/applicationcomponents.cpp:187 #11 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #12 0x00000000004c62af in Widgets::AvailablePagesView::currentPageChanged(QObject*) (this=this@entry=0xe69620, _t1=0x0) at /home/hook/tmp_build/zanshin-0.2.80/src/src/widgets/moc_availablepagesview.cpp:141 #13 0x00000000004ba670 in Widgets::AvailablePagesView::onCurrentChanged(QModelIndex const&) (this=0xe69620, current=...) at /home/hook/tmp_build/zanshin-0.2.80/src/widgets/availablepagesview.cpp:225 #14 0x00000000004c5ea9 in Widgets::AvailablePagesView::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _id=<optimized out>, _a=<optimized out>, _c=<optimized out>) at /home/hook/tmp_build/zanshin-0.2.80/src/src/widgets/moc_availablepagesview.cpp:84 #15 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #16 0x00007ff6268c54ca in QItemSelectionModel::currentChanged(QModelIndex const&, QModelIndex const&) () at /lib64/libQtGui.so.4 #17 0x00007ff6268c9596 in QItemSelectionModelPrivate::_q_rowsAboutToBeRemoved(QModelIndex const&, int, int) () at /lib64/libQtGui.so.4 #18 0x00007ff6268cc389 in QItemSelectionModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) [clone .part.33] () at /lib64/libQtGui.so.4 #19 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #20 0x00007ff6254fc164 in QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int) () at /lib64/libQtCore.so.4 #21 0x00007ff6254954f5 in QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) () at /lib64/libQtCore.so.4 #22 0x00007ff6268f25e5 in QSortFilterProxyModelPrivate::remove_proxy_interval(QVector<int>&, QVector<int>&, int, int, QModelIndex const&, Qt::Orientation, bool) () at /lib64/libQtGui.so.4 #23 0x00007ff6268f7d35 in QSortFilterProxyModelPrivate::remove_source_items(QVector<int>&, QVector<int>&, QVector<int> const&, QModelIndex const&, Qt::Orientation, bool) () at /lib64/libQtGui.so.4 #24 0x00007ff6268f7f45 in QSortFilterProxyModelPrivate::source_items_about_to_be_removed(QModelIndex const&, int, int, Qt::Orientation) () at /lib64/libQtGui.so.4 #25 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #26 0x00007ff6254fc164 in QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int) () at /lib64/libQtCore.so.4 #27 0x00007ff6254954f5 in QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) () at /lib64/libQtCore.so.4 #28 0x00000000004a9419 in Presentation::QueryTreeNodeBase::beginRemoveRows(QModelIndex const&, int, int) (this=<optimized out>, parent=..., first=<optimized out>, last=<optimized out>) at /home/hook/tmp_build/zanshin-0.2.80/src/presentation/querytreemodelbase.cpp:105 #29 0x000000000048c9f6 in std::_Function_handler<void (QSharedPointer<QObject>, int), Presentation::QueryTreeNode<QSharedPointer<QObject> >::init(Presentation::QueryTreeModelBase*, std::function<QSharedPointer<Domain::QueryResultInterface<QSharedPointer<QObject> > > (QSharedPointer<QObject> const&)> const&)::{lambda(QSharedPointer<QObject> const&, int)#3}>::_M_invoke(std::_Any_data const&, QSharedPointer<QObject>, int) (index=0, __closure=0x1343c50) at /home/hook/tmp_build/zanshin-0.2.80/src/presentation/querytreenode.h:159 #30 0x000000000048c9f6 in std::_Function_handler<void (QSharedPointer<QObject>, int), Presentation::QueryTreeNode<QSharedPointer<QObject> >::init(Presentation::QueryTreeModelBase*, std::function<QSharedPointer<Domain::QueryResultInterface<QSharedPointer<QObject> > > (QSharedPointer<QObject> const&)> const&)::{lambda(QSharedPointer<QObject> const&, int)#3}>::_M_invoke(std::_Any_data const&, QSharedPointer<QObject>, int) (__functor=..., __args#0=..., __args#1=0) at /usr/include/c++/4.9.2/functional:2039 #31 0x000000000048d804 in std::function<void (QSharedPointer<QObject>, int)>::operator()(QSharedPointer<QObject>, int) const (this=<optimized out>, __args#0=..., __args#1=<optimized out>) at /usr/include/c++/4.9.2/functional:2439 #32 0x0000000000496908 in std::_Function_handler<void (QSharedPointer<Domain::Project>, int), std::function<void (QSharedPointer<QObject>, int)> >::_M_invoke(std::_Any_data const&, QSharedPointer<Domain::Project>, int) (__functor=..., __args#0=..., __args#1=<optimized out>) at /usr/include/c++/4.9.2/functional:2039 #33 0x000000000045db8c in Domain::QueryResultProvider<QSharedPointer<Domain::Project> >::callChangeHandlers(QSharedPointer<Domain::Project> const&, int, std::function<QList<std::function<void (QSharedPointer<Domain::Project>, int)> > (QSharedPointer<Domain::QueryResultInputImpl<QSharedPointer<Domain::Project> > >)> const&) (__args#1=0, __args#0=..., this=0x7ffffa66fe80) at /usr/include/c++/4.9.2/functional:2439 #34 0x000000000045db8c in Domain::QueryResultProvider<QSharedPointer<Domain::Project> >::callChangeHandlers(QSharedPointer<Domain::Project> const&, int, std::function<QList<std::function<void (QSharedPointer<Domain::Project>, int)> > (QSharedPointer<Domain::QueryResultInputImpl<QSharedPointer<Domain::Project> > >)> const&) (this=this@entry=0xffe658, item=..., index=index@entry=0, handlerGetter=...) at /home/hook/tmp_build/zanshin-0.2.80/src/domain/queryresultprovider.h:259 #35 0x000000000045de42 in Domain::LiveQuery<Akonadi::Item, QSharedPointer<Domain::Project> >::clear() (this=0xffe658) at /home/hook/tmp_build/zanshin-0.2.80/src/domain/queryresultprovider.h:177 #36 0x000000000045de42 in Domain::LiveQuery<Akonadi::Item, QSharedPointer<Domain::Project> >::clear() (this=0xffe658) at /home/hook/tmp_build/zanshin-0.2.80/src/domain/queryresultprovider.h:187 #37 0x000000000045de42 in Domain::LiveQuery<Akonadi::Item, QSharedPointer<Domain::Project> >::clear() (this=this@entry=0x1003c28) at /home/hook/tmp_build/zanshin-0.2.80/src/domain/livequery.h:244 #38 0x000000000045e8f9 in Domain::LiveQuery<Akonadi::Item, QSharedPointer<Domain::Project> >::reset() (this=0x1003c28) at /home/hook/tmp_build/zanshin-0.2.80/src/domain/livequery.h:131 #39 0x0000000000454bed in Akonadi::LiveQueryIntegrator::onCollectionSelectionChanged() (this=<optimized out>) at /home/hook/tmp_build/zanshin-0.2.80/src/akonadi/akonadilivequeryintegrator.cpp:71 #40 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #41 0x000000000047a715 in Akonadi::MonitorInterface::collectionSelectionChanged(Akonadi::Collection const&) (this=this@entry=0xd27c40, _t1=...) at /home/hook/tmp_build/zanshin-0.2.80/src/src/akonadi/moc_akonadimonitorinterface.cpp:148 #42 0x000000000045965e in Akonadi::MonitorImpl::onCollectionChanged(Akonadi::Collection const&, QSet<QByteArray> const&) (this=0xd27c40, collection=..., parts=...) at /home/hook/tmp_build/zanshin-0.2.80/src/akonadi/akonadimonitorimpl.cpp:103 #43 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #44 0x00007ff62945c7aa in Akonadi::Monitor::collectionChanged(Akonadi::Collection const&, QSet<QByteArray> const&) () at /lib64/libakonadi-kde.so.4 #45 0x00007ff62946733c in Akonadi::MonitorPrivate::emitCollectionNotification(Akonadi::NotificationMessageV3 const&, Akonadi::Collection const&, Akonadi::Collection const&, Akonadi::Collection const&) () at /lib64/libakonadi-kde.so.4 #46 0x00007ff629467ffc in Akonadi::MonitorPrivate::emitNotification(Akonadi::NotificationMessageV3 const&) () at /lib64/libakonadi-kde.so.4 #47 0x00007ff629463e91 in Akonadi::MonitorPrivate::flushPipeline() () at /lib64/libakonadi-kde.so.4 #48 0x00007ff629464099 in Akonadi::MonitorPrivate::dataAvailable() () at /lib64/libakonadi-kde.so.4 #49 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #50 0x00007ff6293bd24e in Akonadi::EntityCache<Akonadi::Collection, Akonadi::CollectionFetchJob, Akonadi::CollectionFetchScope>::processResult(KJob*) () at /lib64/libakonadi-kde.so.4 #51 0x00007ff6254b288a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4 #52 0x00007ff625bb3b52 in KJob::result(KJob*) () at /lib64/libkdecore.so.5 #53 0x00007ff625bb3b90 in KJob::emitResult() () at /lib64/libkdecore.so.5 #54 0x00007ff6254b6d61 in QObject::event(QEvent*) () at /lib64/libQtCore.so.4 #55 0x00007ff62637a79c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQtGui.so.4 #56 0x00007ff626380e40 in QApplication::notify(QObject*, QEvent*) () at /lib64/libQtGui.so.4 #57 0x00007ff62af6625a in KApplication::notify(QObject*, QEvent*) () at /lib64/libkdeui.so.5 #58 0x00007ff62549ecad in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /lib64/libQtCore.so.4 #59 0x00007ff6254a1be1 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /lib64/libQtCore.so.4 #60 0x00007ff6254cbcae in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQtCore.so.4 #61 0x00007ff61f1c3c6d in g_main_context_dispatch () at /lib64/libglib-2.0.so.0 #62 0x00007ff61f1c3f18 in g_main_context_iterate.isra () at /lib64/libglib-2.0.so.0 #63 0x00007ff61f1c3fbc in g_main_context_iteration () at /lib64/libglib-2.0.so.0 #64 0x00007ff6254cbe1e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #65 0x00007ff6264184f6 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtGui.so.4 #66 0x00007ff62549d931 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #67 0x00007ff62549dc45 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQtCore.so.4 #68 0x00007ff6254a2e59 in QCoreApplication::exec() () at /lib64/libQtCore.so.4 #69 0x000000000042bdc9 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/hook/tmp_build/zanshin-0.2.80/src/zanshin/app/main.cpp:109
Fixed earlier today with commit f7b439b. :-)
Man, you’re quick! May I ask where the git is located? It’s hard to find …
Sure: git clone git://anongit.kde.org/zanshin.git I plan a revamp of the website around the 0.3 release, it needs updating for people to find the infrastructure properly.