Bug 459232

Summary: Panel crashes in ScreencastingRequest::setUuid() when hovering over Task Manager entries with tooltips enabled
Product: [Plasma] plasmashell Reporter: Jonas Rakebrandt <xarblu>
Component: Task Manager and Icons-Only Task ManagerAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED FIXED    
Severity: crash CC: albbas, aleixpol, christann404, nate, qydwhotmail
Priority: NOR Keywords: regression
Version: 5.25.90   
Target Milestone: 1.0   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In: 5.26
Sentry Crash Report:
Attachments: Backtrace with GDB

Description Jonas Rakebrandt 2022-09-16 17:15:09 UTC
SUMMARY
The Plasma panel crashes when hovering over Task Manager entries with tooltips enabled.

STEPS TO REPRODUCE
1. Create a panel with Task Manager
2. Hover the cursor over a Task Manager entry

OBSERVED RESULT
On Hover the Task Manager entry changes color as expected, then freezes in this state and then crashes the entire panel.

EXPECTED RESULT
Hovering over an entry should not crash the panel and display the tooltip if enabled.

SOFTWARE/OS VERSIONS
OS: Gentoo Linux
Kernel: 5.19.8-xanmod1-x86_64
KDE Plasma Version: 5.25.90
KDE Frameworks Version: 5.98.0
Qt Version: 5.15.5
Graphics Platform: Wayland

ADDITIONAL INFORMATION
Disabling tooltips makes hovering over entries work as expected which makes me believe there's something going wrong in the tooltip/thumbnail generation.
Comment 1 Bacteria 2022-09-17 11:30:56 UTC
I am not able to reproduce it on Classic Task Manager style. I am guessing you are using Icons-Only task manager?
Comment 2 Jonas Rakebrandt 2022-09-17 12:42:47 UTC
For me the issue actually occurs with both task manager styles and as previously said disabling tooltips makes them work again. Though if you say there's no issue for you it might just be a problem with how I compiled plasmashell on my system. I'll try to look further into it.
Comment 3 Jonas Rakebrandt 2022-09-17 16:48:30 UTC
Created attachment 152164 [details]
Backtrace with GDB

I compiled most of the related packages with debug symbols and created a backtrace which lead me to the file `libtaskmanager/declarative/screencastingrequest.cpp` from `plasma-workspace`.
Something seems to be broken for me in the `ScreencastingRequest::setUuid` function, specifically the `d->m_stream->deleteLater();` bit.
Surprisingly everything seems work again after I just remove either that entire line. I don't really know if that is a safe thing to do though.
Comment 4 Fushan Wen 2022-09-18 01:05:38 UTC
*** Bug 459304 has been marked as a duplicate of this bug. ***
Comment 5 Bug Janitor Service 2022-09-18 11:22:18 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/2138
Comment 6 Fushan Wen 2022-09-18 11:23:14 UTC
Hi Jonas, could you test the aforementioned patch to see if the crash is fixed?
Comment 7 Jonas Rakebrandt 2022-09-18 12:14:59 UTC
Yes, this fixes it! Thank you!
Comment 8 Fushan Wen 2022-09-18 14:46:52 UTC
Git commit 8173aff447c6674d952f797314701cab0f54446d by Fushan Wen.
Committed on 18/09/2022 at 11:21.
Pushed by fusionfuture into branch 'master'.

libtaskmanager: assign stream and check null pointer
FIXED-IN: 5.26

M  +5    -1    libtaskmanager/declarative/screencastingrequest.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/8173aff447c6674d952f797314701cab0f54446d
Comment 9 Fushan Wen 2022-09-18 14:47:22 UTC
Git commit 01a5e56d3f5b09af86ad3af6fe6d3267096776c2 by Fushan Wen.
Committed on 18/09/2022 at 14:47.
Pushed by fusionfuture into branch 'Plasma/5.26'.

libtaskmanager: assign stream and check null pointer
FIXED-IN: 5.26


(cherry picked from commit 8173aff447c6674d952f797314701cab0f54446d)

M  +5    -1    libtaskmanager/declarative/screencastingrequest.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/01a5e56d3f5b09af86ad3af6fe6d3267096776c2
Comment 10 Fushan Wen 2022-09-23 14:21:55 UTC
*** Bug 459559 has been marked as a duplicate of this bug. ***