Bug 498787 - Discover crashes because of PackageKitBackend on startup
Summary: Discover crashes because of PackageKitBackend on startup
Status: RESOLVED FIXED
Alias: None
Product: Discover
Classification: Applications
Component: discover (other bugs)
Version First Reported In: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2025-01-17 10:02 UTC by Akseli Lahtinen
Modified: 2025-01-17 15:00 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report: https://crash-reports.kde.org/organizations/kde/issues/119674/events/1b2b922cd2674584836acdea29cafda2/


Attachments
New crash information added by DrKonqi (95.93 KB, text/plain)
2025-01-17 10:02 UTC, Akseli Lahtinen
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Akseli Lahtinen 2025-01-17 10:02:01 UTC
Application: plasma-discover (6.3.80)
 (Compiled from sources)
ApplicationNotResponding [ANR]: false
Qt Version: 6.8.1
Frameworks Version: 6.11.0
Operating System: Linux 6.12.9-200.fc41.x86_64 x86_64
Windowing System: Wayland
Distribution: "Fedora Linux 41 (KDE Plasma)"
DrKonqi: 6.3.80 [CoredumpBackend]

-- Information about the crash:
Whenever I open Discover, it immediately crashes. 

Something that might be related was that before this started happening:
- I updated my system through Discover, I have offline updates enabled so it would ask me to restart
- However, I logged out and instead, ran updates with `sudo dnf update --refresh` in TTY (I do this before I build my Plasma dev setup)
- I then rebooted the PC

After this, Discover started crashing on start. I am not sure if it's directly related.

The crash can be reproduced every time.

-- Backtrace (Reduced):
#5  0x00007fc1b41e195d in QArrayDataPointer<QString>::QArrayDataPointer (this=<optimized out>) at /usr/include/qt6/QtCore/qarraydatapointer.h:32
#6  QList<QString>::QList (this=<optimized out>) at /usr/include/qt6/QtCore/qlist.h:277
#7  PackageKitBackend::resourcesByPackageNames<QList<AbstractResource*>, QList<QString> > (this=this@entry=0x0, pkgnames=...) at /home/akseli/Repositories/kde/src/discover/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp:548
#8  0x00007fc1b41e7b6a in PackageKitResource::extendsItself (this=0x7fc17829eaf0) at /home/akseli/Repositories/kde/src/discover/libdiscover/backends/PackageKitBackend/PackageKitResource.cpp:477
#9  0x00007fc1b41cf5d4 in operator() (__closure=<synthetic pointer>, res=...) at /home/akseli/Repositories/kde/src/discover/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp:800


Reported using DrKonqi
Comment 1 Akseli Lahtinen 2025-01-17 10:02:03 UTC
Created attachment 177453 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 Bug Janitor Service 2025-01-17 13:35:51 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/discover/-/merge_requests/1011
Comment 3 Aleix Pol 2025-01-17 15:00:39 UTC
Git commit 7f21df38372bfea6b61d98522c0bf55f68108eea by Aleix Pol.
Committed on 17/01/2025 at 13:35.
Pushed by apol into branch 'master'.

pk: Ensure we process the resources on the main thread

Can't access PackageKitBackend members from a separate thread.

M  +7    -2    libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp

https://invent.kde.org/plasma/discover/-/commit/7f21df38372bfea6b61d98522c0bf55f68108eea