Bug 457278

Summary: Discover crashes every time when closing the window after applying updates
Product: [Applications] Discover Reporter: adec2011.ac
Component: discoverAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: aleixpol, heywood, KDE, nate, piotr.mierzwinski
Priority: NOR Keywords: drkonqi, regression
Version: 5.25.3   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In: 5.25.4

Description adec2011.ac 2022-07-29 15:10:30 UTC
Application: plasma-discover (5.25.3)

Qt Version: 5.15.5
Frameworks Version: 5.97.0
Operating System: Linux 5.18.0-14.2-liquorix-amd64 x86_64
Windowing System: X11
Distribution: KDE neon Testing Edition
DrKonqi: 5.25.3 [KCrashBackend]

-- Information about the crash:
Discover opens and shows me the updates and applies them ok but when i close the open window it always crashes

The crash can be reproduced every time.

-- Backtrace:
Application: Discover (plasma-discover), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f1aea680f65 in QQuickWindow::mouseGrabberItem() const () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#5  0x00007f1aea683b8e in QQuickWindowPrivate::removeGrabber(QQuickItem*, bool, bool) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f1aea66a383 in QQuickItemPrivate::derefWindow() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f1aea66ac2c in QQuickItem::setParentItem(QQuickItem*) () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#8  0x00007f1aea66b87c in QQuickItem::~QQuickItem() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#9  0x00007f1aea7e8ba9 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#10 0x00007f1ae86df26e in QObjectPrivate::deleteChildren() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f1ae86e9d06 in QObject::~QObject() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#12 0x00007f1aea66b97a in QQuickItem::~QQuickItem() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#13 0x00007f1aea7e8ba9 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#14 0x00007f1ae86df26e in QObjectPrivate::deleteChildren() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007f1ae86e9d06 in QObject::~QObject() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x00007f1aea66b97a in QQuickItem::~QQuickItem() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#17 0x00007f1aea7ebec9 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#18 0x00007f1ae86df26e in QObjectPrivate::deleteChildren() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007f1ae86e9d06 in QObject::~QObject() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00007f1aea66b97a in QQuickItem::~QQuickItem() () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#21 0x00007f1adaf743b9 in  () at /usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Templates.2/libqtquicktemplates2plugin.so
#22 0x00007f1ae93b6707 in QV4::QObjectWrapper::destroyObject(bool) () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#23 0x00007f1ae92b0559 in QV4::MemoryManager::sweep(bool, void (*)(char const*)) () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#24 0x00007f1ae92b05d9 in QV4::MemoryManager::~MemoryManager() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#25 0x00007f1ae9331a6c in QV4::ExecutionEngine::~ExecutionEngine() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#26 0x00007f1ae931c432 in QJSEngine::~QJSEngine() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#27 0x00007f1ae9497f54 in QQmlEngine::~QQmlEngine() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#28 0x00007f1ae951ee4d in QQmlApplicationEngine::~QQmlApplicationEngine() () at /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#29 0x00005576e2e8b8a5 in  ()
#30 0x00005576e2e8b8cd in  ()
#31 0x00007f1ae86e25e3 in QObject::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007f1ae9b6de83 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#33 0x00007f1ae9b76c98 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007f1ae86b4c6a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#35 0x00007f1ae86b7571 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007f1ae86bb92c in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#37 0x00005576e2e81525 in  ()
#38 0x00007f1ae7e32083 in __libc_start_main (main=0x5576e2e80c40, argc=3, argv=0x7fff28ad13f8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff28ad13e8) at ../csu/libc-start.c:308
#39 0x00005576e2e81a9e in  ()
[Inferior 1 (process 44184) detached]

Reported using DrKonqi
Comment 1 Nate Graham 2022-07-29 17:23:26 UTC
Can reproduce.
Comment 2 Aleix Pol 2022-07-29 17:27:17 UTC
Git commit 82ffa5ab78ee0262868e42a0e6be0c892c3021d5 by Aleix Pol.
Committed on 29/07/2022 at 17:27.
Pushed by apol into branch 'master'.

Fix crash after update

If we delay the cleanup of the QQmlEngine, it doesn't crash after
updating.

M  +1    -1    discover/DiscoverObject.cpp

https://invent.kde.org/plasma/discover/commit/82ffa5ab78ee0262868e42a0e6be0c892c3021d5
Comment 3 Aleix Pol 2022-07-29 17:27:52 UTC
Git commit 4323e71fd9ed07e8cb120dd80cb5672912dc8b66 by Aleix Pol Gonzalez, on behalf of Aleix Pol.
Committed on 29/07/2022 at 17:27.
Pushed by apol into branch 'Plasma/5.25'.

Fix crash after update

If we delay the cleanup of the QQmlEngine, it doesn't crash after
updating.


(cherry picked from commit 82ffa5ab78ee0262868e42a0e6be0c892c3021d5)

M  +1    -1    discover/DiscoverObject.cpp

https://invent.kde.org/plasma/discover/commit/4323e71fd9ed07e8cb120dd80cb5672912dc8b66
Comment 4 Nate Graham 2022-08-25 10:50:12 UTC
*** Bug 458259 has been marked as a duplicate of this bug. ***
Comment 5 John Quentin Heywood 2022-11-11 16:12:56 UTC
Can duplicate. 
Application: plasma-discover (5.24.7)
Plasma Version: 5.24.7
Qt Version: 5.15.3
Frameworks Version: 5.98.0
Kernel version: Linux 5.15.0-52-generic (64-bit)(
Graphics Platform: X11
Distribution: Kubuntu 22.04.1 LTS
Comment 6 John Quentin Heywood 2022-11-11 16:14:30 UTC
(In reply to John Quentin Heywood from comment #5)
> Can duplicate. 
> Application: plasma-discover (5.24.7)
> Plasma Version: 5.24.7
> Qt Version: 5.15.3
> Frameworks Version: 5.98.0
> Kernel version: Linux 5.15.0-52-generic (64-bit)(
> Graphics Platform: X11
> Distribution: Kubuntu 22.04.1 LTS

If you wait 5-10 minutes before you close discover, it does not crash.