Summary: | "System Settings" crashed when I clicked on the "Close" button. | ||
---|---|---|---|
Product: | [Applications] systemsettings | Reporter: | Thomas Cicciu <thomas.cicciu> |
Component: | general | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | kde, nate |
Priority: | NOR | Keywords: | drkonqi |
Version: | 5.18.0 | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | https://commits.kde.org/knewstuff/5c7ee50bf900666efa44439a4f4a12ec5df986f9 | Version Fixed In: | 5.68 |
Sentry Crash Report: |
Description
Thomas Cicciu
2020-02-17 21:45:20 UTC
Can you reproduce it? Edit, managed. Open get new icons -> select -> comments -> close systemsettings ==18016== Invalid read of size 8 ==18016== at 0x798B9F3: load (atomic_base.h:740) ==18016== by 0x798B9F3: std::atomic<QObjectPrivate::ConnectionData*>::load(std::memory_order) const (atomic:519) ==18016== by 0x7989BDB: QObjectPrivate::ConnectionData* QAtomicOps<QObjectPrivate::ConnectionData*>::loadRelaxed<QObjectPrivate::ConnectionData*>(std::atomic<QObjectPrivate::ConnectionData*> const&) (qatomic_cxx11.h:239) ==18016== by 0x7986D0D: QBasicAtomicPointer<QObjectPrivate::ConnectionData>::loadRelaxed() const (qbasicatomic.h:248) ==18016== by 0x797B8F9: QObject::~QObject() (qobject.cpp:1030) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== Address 0x2194a930 is 64 bytes inside a block of size 136 free'd ==18016== at 0x483A08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:595) ==18016== by 0x78C6496: QAbstractItemModelPrivate::~QAbstractItemModelPrivate() (qabstractitemmodel.cpp:507) ==18016== by 0x798A001: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x78C9023: QAbstractItemModel::~QAbstractItemModel() (qabstractitemmodel.cpp:1541) ==18016== by 0x78CD84F: QAbstractListModel::~QAbstractListModel() (qabstractitemmodel.cpp:3734) ==18016== by 0x12414AA6: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:116) ==18016== by 0x12414ACB: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x78C8F4C: QAbstractItemModel::QAbstractItemModel(QObject*) (qabstractitemmodel.cpp:1526) ==18016== by 0x78CD7D0: QAbstractListModel::QAbstractListModel(QObject*) (qabstractitemmodel.cpp:3713) ==18016== by 0x124149F9: KNSCore::CommentsModel::CommentsModel(KNSCore::Engine*) (src/frameworks/knewstuff/src/core/commentsmodel.cpp:107) ==18016== by 0x1242B8BF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== ==18016== Invalid write of size 8 ==18016== at 0x798BB73: store (atomic_base.h:718) ==18016== by 0x798BB73: std::atomic<QObjectPrivate::ConnectionData*>::store(QObjectPrivate::ConnectionData*, std::memory_order) (atomic:510) ==18016== by 0x7989CDE: void QAtomicOps<QObjectPrivate::ConnectionData*>::storeRelaxed<QObjectPrivate::ConnectionData*>(std::atomic<QObjectPrivate::ConnectionData*>&, QObjectPrivate::ConnectionData*) (qatomic_cxx11.h:269) ==18016== by 0x7986ED0: QBasicAtomicPointer<QObjectPrivate::ConnectionData>::storeRelaxed(QObjectPrivate::ConnectionData*) (qbasicatomic.h:249) ==18016== by 0x797BD3C: QObject::~QObject() (qobject.cpp:1104) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== Address 0x2194a930 is 64 bytes inside a block of size 136 free'd ==18016== at 0x483A08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:595) ==18016== by 0x78C6496: QAbstractItemModelPrivate::~QAbstractItemModelPrivate() (qabstractitemmodel.cpp:507) ==18016== by 0x798A001: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x78C9023: QAbstractItemModel::~QAbstractItemModel() (qabstractitemmodel.cpp:1541) ==18016== by 0x78CD84F: QAbstractListModel::~QAbstractListModel() (qabstractitemmodel.cpp:3734) ==18016== by 0x12414AA6: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:116) ==18016== by 0x12414ACB: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x78C8F4C: QAbstractItemModel::QAbstractItemModel(QObject*) (qabstractitemmodel.cpp:1526) ==18016== by 0x78CD7D0: QAbstractListModel::QAbstractListModel(QObject*) (qabstractitemmodel.cpp:3713) ==18016== by 0x124149F9: KNSCore::CommentsModel::CommentsModel(KNSCore::Engine*) (src/frameworks/knewstuff/src/core/commentsmodel.cpp:107) ==18016== by 0x1242B8BF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== ==18016== Invalid read of size 8 ==18016== at 0x769BB26: QListData::isEmpty() const (qlist.h:116) ==18016== by 0x79871D9: QList<QObject*>::isEmpty() const (qlist.h:201) ==18016== by 0x797BD4F: QObject::~QObject() (qobject.cpp:1106) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== Address 0x2194a908 is 24 bytes inside a block of size 136 free'd ==18016== at 0x483A08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:595) ==18016== by 0x78C6496: QAbstractItemModelPrivate::~QAbstractItemModelPrivate() (qabstractitemmodel.cpp:507) ==18016== by 0x798A001: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x78C9023: QAbstractItemModel::~QAbstractItemModel() (qabstractitemmodel.cpp:1541) ==18016== by 0x78CD84F: QAbstractListModel::~QAbstractListModel() (qabstractitemmodel.cpp:3734) ==18016== by 0x12414AA6: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:116) ==18016== by 0x12414ACB: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x78C8F4C: QAbstractItemModel::QAbstractItemModel(QObject*) (qabstractitemmodel.cpp:1526) ==18016== by 0x78CD7D0: QAbstractListModel::QAbstractListModel(QObject*) (qabstractitemmodel.cpp:3713) ==18016== by 0x124149F9: KNSCore::CommentsModel::CommentsModel(KNSCore::Engine*) (src/frameworks/knewstuff/src/core/commentsmodel.cpp:107) ==18016== by 0x1242B8BF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== ==18016== Invalid read of size 8 ==18016== at 0x769BB30: QListData::isEmpty() const (qlist.h:116) ==18016== by 0x79871D9: QList<QObject*>::isEmpty() const (qlist.h:201) ==18016== by 0x797BD4F: QObject::~QObject() (qobject.cpp:1106) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== Address 0x2194a908 is 24 bytes inside a block of size 136 free'd ==18016== at 0x483A08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:595) ==18016== by 0x78C6496: QAbstractItemModelPrivate::~QAbstractItemModelPrivate() (qabstractitemmodel.cpp:507) ==18016== by 0x798A001: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x78C9023: QAbstractItemModel::~QAbstractItemModel() (qabstractitemmodel.cpp:1541) ==18016== by 0x78CD84F: QAbstractListModel::~QAbstractListModel() (qabstractitemmodel.cpp:3734) ==18016== by 0x12414AA6: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:116) ==18016== by 0x12414ACB: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x78C8F4C: QAbstractItemModel::QAbstractItemModel(QObject*) (qabstractitemmodel.cpp:1526) ==18016== by 0x78CD7D0: QAbstractListModel::QAbstractListModel(QObject*) (qabstractitemmodel.cpp:3713) ==18016== by 0x124149F9: KNSCore::CommentsModel::CommentsModel(KNSCore::Engine*) (src/frameworks/knewstuff/src/core/commentsmodel.cpp:107) ==18016== by 0x1242B8BF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== ==18016== Invalid read of size 8 ==18016== at 0x797BDAF: QObject::~QObject() (qobject.cpp:1117) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x4CE55BB: QQuickItem::~QQuickItem() (qquickitem.cpp:2383) ==18016== by 0x4DF9985: QQuickFlickable::~QQuickFlickable() (qquickflickable.cpp:751) ==18016== Address 0x2194a900 is 16 bytes inside a block of size 136 free'd ==18016== at 0x483A08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:595) ==18016== by 0x78C6496: QAbstractItemModelPrivate::~QAbstractItemModelPrivate() (qabstractitemmodel.cpp:507) ==18016== by 0x798A001: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x78C9023: QAbstractItemModel::~QAbstractItemModel() (qabstractitemmodel.cpp:1541) ==18016== by 0x78CD84F: QAbstractListModel::~QAbstractListModel() (qabstractitemmodel.cpp:3734) ==18016== by 0x12414AA6: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:116) ==18016== by 0x12414ACB: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x78C8F4C: QAbstractItemModel::QAbstractItemModel(QObject*) (qabstractitemmodel.cpp:1526) ==18016== by 0x78CD7D0: QAbstractListModel::QAbstractListModel(QObject*) (qabstractitemmodel.cpp:3713) ==18016== by 0x124149F9: KNSCore::CommentsModel::CommentsModel(KNSCore::Engine*) (src/frameworks/knewstuff/src/core/commentsmodel.cpp:107) ==18016== by 0x1242B8BF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== ==18016== Invalid read of size 8 ==18016== at 0x798716E: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:106) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x4CE55BB: QQuickItem::~QQuickItem() (qquickitem.cpp:2383) ==18016== Address 0x2194a898 is 8 bytes inside a block of size 24 free'd ==18016== at 0x4839EAB: operator delete(void*) (vg_replace_malloc.c:586) ==18016== by 0x12414AD7: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== by 0x12424AEB: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:95) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x123B4A76: Engine::~Engine() (src/frameworks/knewstuff/src/qtquick/quickengine.cpp:83) ==18016== by 0x123B14BA: QQmlPrivate::QQmlElement<Engine>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B14EB: QQmlPrivate::QQmlElement<Engine>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x1242B8AF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== by 0x5671056: QQmlComponent::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (moc_qqmlcomponent.cpp:150) ==18016== by 0x567130A: QQmlComponent::qt_metacall(QMetaObject::Call, int, void**) (moc_qqmlcomponent.cpp:218) ==18016== by 0x793F984: QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) (qmetaobject.cpp:316) ==18016== ==18016== Invalid read of size 8 ==18016== at 0x7989FF3: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x797BE17: QObject::~QObject() (qobject.cpp:1119) ==18016== by 0x123BD7CD: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*>::const_iterator>(QHash<QString, KNSCore::CommentsModel*>::const_iterator, QHash<QString, KNSCore::CommentsModel*>::const_iterator) (qalgorithms.h:320) ==18016== by 0x123BD712: void qDeleteAll<QHash<QString, KNSCore::CommentsModel*> >(QHash<QString, KNSCore::CommentsModel*> const&) (qalgorithms.h:328) ==18016== by 0x123BB255: ItemsModel::Private::~Private() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:46) ==18016== by 0x123B828E: ItemsModel::~ItemsModel() (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:99) ==18016== by 0x123B1C8A: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:111) ==18016== by 0x123B1CBB: QQmlPrivate::QQmlElement<ItemsModel>::~QQmlElement() (qqmlprivate.h:109) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== Address 0x2194a8f0 is 0 bytes inside a block of size 136 free'd ==18016== at 0x483A08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:595) ==18016== by 0x78C6496: QAbstractItemModelPrivate::~QAbstractItemModelPrivate() (qabstractitemmodel.cpp:507) ==18016== by 0x798A001: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==18016== by 0x7987180: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==18016== by 0x797BDDE: QObject::~QObject() (qobject.cpp:997) ==18016== by 0x78C9023: QAbstractItemModel::~QAbstractItemModel() (qabstractitemmodel.cpp:1541) ==18016== by 0x78CD84F: QAbstractListModel::~QAbstractListModel() (qabstractitemmodel.cpp:3734) ==18016== by 0x12414AA6: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:116) ==18016== by 0x12414ACB: KNSCore::CommentsModel::~CommentsModel() (src/frameworks/knewstuff/src/core/commentsmodel.cpp:114) ==18016== by 0x797D950: QObjectPrivate::deleteChildren() (qobject.cpp:2123) ==18016== by 0x797BD65: QObject::~QObject() (qobject.cpp:1107) ==18016== by 0x12424AC8: KNSCore::Engine::~Engine() (src/frameworks/knewstuff/src/core/engine.cpp:103) ==18016== Block was alloc'd at ==18016== at 0x4838DEF: operator new(unsigned long) (vg_replace_malloc.c:344) ==18016== by 0x78C8F4C: QAbstractItemModel::QAbstractItemModel(QObject*) (qabstractitemmodel.cpp:1526) ==18016== by 0x78CD7D0: QAbstractListModel::QAbstractListModel(QObject*) (qabstractitemmodel.cpp:3713) ==18016== by 0x124149F9: KNSCore::CommentsModel::CommentsModel(KNSCore::Engine*) (src/frameworks/knewstuff/src/core/commentsmodel.cpp:107) ==18016== by 0x1242B8BF: KNSCore::Engine::commentsForEntry(KNSCore::EntryInternal const&) (src/frameworks/knewstuff/src/core/engine.cpp:824) ==18016== by 0x123B9C7B: ItemsModel::data(QModelIndex const&, int) const (src/frameworks/knewstuff/src/qtquick/quickitemsmodel.cpp:337) ==18016== by 0x123CBBF9: KNewStuffQuick::CommentsModel::Private::resetConnections() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:48) ==18016== by 0x123CB7C0: KNewStuffQuick::CommentsModel::componentComplete() (src/frameworks/knewstuff/src/qtquick/commentsmodel.cpp:89) ==18016== by 0x56FC778: QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) (qqmlobjectcreator.cpp:1410) ==18016== by 0x566E8EE: QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) (qqmlcomponent.cpp:969) ==18016== by 0x566EA08: QQmlComponentPrivate::completeCreate() (qqmlcomponent.cpp:1005) ==18016== by 0x566FA7B: QQmlComponent::createObject(QQmlV4Function*) (qqmlcomponent.cpp:1377) ==18016== pure virtual method called Git commit 5c7ee50bf900666efa44439a4f4a12ec5df986f9 by David Edmundson. Committed on 17/02/2020 at 23:31. Pushed by davidedmundson into branch 'master'. Don't double delete CommentsModel Summary: CommentsModel instances are owned by the engine. They are fetched through a getter with a cache, so ownership has to stay that way. QuickItemsModel should not be deleting them. Test Plan: Got a valgrind log of the crash, which showed the issue (see attached bug report) Afterwards: Opened systemsettings, opened comments dialog Closed systemsettings Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D27468 M +0 -1 src/qtquick/quickitemsmodel.cpp https://commits.kde.org/knewstuff/5c7ee50bf900666efa44439a4f4a12ec5df986f9 |