Summary: | plasmashell crashes at showing window thumbnails | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | Fushan Wen <qydwhotmail> |
Component: | general | Assignee: | David Edmundson <kde> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | ericrfontaine, javiercorderoperez, jonstro, laura.stern, plasma-bugs, vlad.zahorodnii |
Priority: | NOR | Keywords: | drkonqi |
Version: | master | ||
Target Milestone: | 1.0 | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/frameworks/plasma-framework/commit/bd8c296ab79fe00e77aaf3f7b38aff373d9ee6ee | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi
New crash information added by DrKonqi |
Description
Fushan Wen
2021-10-19 04:29:38 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/609 After updating these packages, the bug occurs: kdeclarative-components kdeclarative-devel kwin5 kwin5-devel libKF5CalendarEvents5 libKF5Declarative5 libKF5Plasma5 libKF5QuickAddons5 plasma-framework plasma-framework-components plasma-framework-devel A possibly relevant merge request was started @ https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/358 Created attachment 142602 [details]
New crash information added by DrKonqi
plasmashell (5.23.0) using Qt 5.15.3
- What I was doing when the application crashed:
Hovering mouse cursor over open app icons from Icons-Only Task Manager. Crashes only when hovering over the icon of an open app, irregardless of whether it's minimized or not.
- Custom settings of the application:
I'm using the Icons-Only variant of the task manger. I have the following KWin desktop effects fully enabled: Invert, Zoom, Desaturate Unresponsive Applications, Fading Popups, Full Screen, Login, Logout, Maximize, Morphing Popups, Mouse Mark, Screen Edge, Sliding popups, Wobbly Windows, Magic Lamp, Dialog Parent, Window Aperture, Slide, Desktop Grid, Present Windows, Glide; and the following partially enabled effects: Background contrast, Blur.
-- Backtrace (Reduced):
#3 0x00007f66df0aa7c4 in Plasma::WindowThumbnail::updatePaintNode(QSGNode*, QQuickItem::UpdatePaintNodeData*) (this=0x56119704cbd0, oldNode=<optimized out>, updatePaintNodeData=<optimized out>) at ./src/declarativeimports/core/windowthumbnail.cpp:327
#4 0x00007f670ac3d380 in QQuickWindowPrivate::updateDirtyNode(QQuickItem*) (this=0x561193a4be10, item=0x56119704cbd0) at items/qquickwindow.cpp:3872
#5 0x00007f670ac3dc3b in QQuickWindowPrivate::updateDirtyNodes() (this=this@entry=0x561193a4be10) at items/qquickwindow.cpp:3617
#6 0x00007f670ac3f330 in QQuickWindowPrivate::syncSceneGraph() (this=this@entry=0x561193a4be10) at items/qquickwindow.cpp:524
#7 0x00007f670abdce97 in QSGRenderThread::sync(bool, bool) (this=this@entry=0x561193ebaf10, inExpose=inExpose@entry=false, inGrab=inGrab@entry=false) at scenegraph/qsgthreadedrenderloop.cpp:647
Git commit bd8c296ab79fe00e77aaf3f7b38aff373d9ee6ee by Nate Graham, on behalf of Vlad Zahorodnii. Committed on 19/10/2021 at 11:44. Pushed by ngraham into branch 'master'. Fix crash in WindowThumbnail::updatePaintNode() Recently, the WindowThumbnail was changed so it properly discards the texture provider in the releaseResources() function. But it appears like there's a case where the releaseResources() function can be called in the windowToTexture() function, which will result in use after free bugs. Based on af5a855da42c3ada2f0e802c68ad8f7c0e73b38e, it looks like the WindowThumbnail item didn't use QQuickItem::releaseResources() to properly release its graphics resources. It was checking whether the texture node still has a texture. If there's no texture, it means that the texture got discarded and it needs to be re-created; otherwise it is okay to re-use the old texture. With QQuickItem::releaseResources(), we don't need that workaround anymore since QtQuick will call the releaseResources() function whenever it wants the WindowThumbnail to discard graphics resources. M +0 -5 src/declarativeimports/core/windowthumbnail.cpp https://invent.kde.org/frameworks/plasma-framework/commit/bd8c296ab79fe00e77aaf3f7b38aff373d9ee6ee Created attachment 142630 [details]
New crash information added by DrKonqi
plasmashell (5.23.80) using Qt 5.15.3
- What I was doing when the application crashed:
Move mouse cursor on the task manager.
- Custom settings of the application:
I have the panel on the top, otherwise it is as usual.
When the crash first appeared, I had two windows with the same title (one with <2> appended), and a fullscreen window.
This crash appeared immediately after installing updates and logging in again.
The Alt+Tab task switcher (which also uses thumbnail images) works correctly.
-- Backtrace (Reduced):
#3 0x00007fa598fd17c4 in Plasma::WindowThumbnail::updatePaintNode(QSGNode*, QQuickItem::UpdatePaintNodeData*) (this=0x55ba251e92c0, oldNode=<optimized out>, updatePaintNodeData=<optimized out>) at ./src/declarativeimports/core/windowthumbnail.cpp:327
#4 0x00007fa606c82380 in QQuickWindowPrivate::updateDirtyNode(QQuickItem*) (this=0x55ba23b02970, item=0x55ba251e92c0) at items/qquickwindow.cpp:3872
#5 0x00007fa606c82c3b in QQuickWindowPrivate::updateDirtyNodes() (this=this@entry=0x55ba23b02970) at items/qquickwindow.cpp:3617
#6 0x00007fa606c84330 in QQuickWindowPrivate::syncSceneGraph() (this=this@entry=0x55ba23b02970) at items/qquickwindow.cpp:524
#7 0x00007fa606c21e97 in QSGRenderThread::sync(bool, bool) (this=this@entry=0x55ba24985240, inExpose=inExpose@entry=false, inGrab=inGrab@entry=false) at scenegraph/qsgthreadedrenderloop.cpp:647
Git commit 80928f4344af159f58e61225a02ea7a874cb5493 by Nate Graham, on behalf of Fushan Wen. Committed on 20/10/2021 at 16:56. Pushed by ngraham into branch 'master'. taskmanager: Ensure tooltips are really disabled when "Show tooltips" is unchecked Before frameworks/plasma-framework!358, if enabled is not set (default true), when the tooltip is disabled in the settings, plasmashell will still crash at showing window thumbnails, which means the content in the tooltip is just not visible, but the relevant code is still executed. This ensures tooltips are really disabled when "Show tooltips" is not checked, which is beneficial for people who want to extend the battery life or avoid the unresponsiveness caused by tooltips. Related: bug 444001 M +2 -1 applets/taskmanager/package/contents/ui/Task.qml https://invent.kde.org/plasma/plasma-desktop/commit/80928f4344af159f58e61225a02ea7a874cb5493 *** Bug 444068 has been marked as a duplicate of this bug. *** |