Bug 443166

Summary: Crash when invoking Thumbnail Aside
Product: [Plasma] kwin Reporter: Antonio Rojas <arojas>
Component: effects-variousAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: bugseforuns, nate
Priority: HI Keywords: regression, wayland
Version: 5.22.90   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 5.23
Sentry Crash Report:

Description Antonio Rojas 2021-09-30 16:44:08 UTC
SUMMARY
kwin crashes immediately when invoking the Thumbnail Aside effect via the Ctrl+Meta+T shortcut

STEPS TO REPRODUCE
1. Enable the Thumbnail Aside effect and press Ctrl+Meta+T

OBSERVED RESULT
Crash

(gdb) bt
#0  0x00007f50d18cf095 in KWin::Workspace::clientArea(KWin::clientAreaOption, KWin::AbstractOutput const*, KWin::VirtualDesktop const*) const
    (this=0x556bd9893b60, opt=KWin::MaximizeArea, output=<optimized out>, desktop=<optimized out>)
    at /usr/src/debug/kwin-5.22.90/src/workspace.cpp:2297
#1  0x00007f50d15dae19 in KWin::ThumbnailAsideEffect::arrange() (this=0x556bd9ea5c70)
    at /usr/src/debug/kwin-5.22.90/src/effects/thumbnailaside/thumbnailaside.cpp:152
#2  0x00007f50cffaa76b in  () at /usr/lib/libQt5Core.so.5
#3  0x00007f50d0c48203 in QAction::triggered(bool) () at /usr/lib/libQt5Widgets.so.5
#4  0x00007f50d0c4af18 in QAction::activate(QAction::ActionEvent) () at /usr/lib/libQt5Widgets.so.5
#5  0x00007f50ce5b3d66 in  () at /usr/lib/libKF5GlobalAccel.so.5
#6  0x00007f50cffaa76b in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f50ce5bee05 in  () at /usr/lib/libKF5GlobalAccel.so.5
#8  0x00007f50ce5bf06b in  () at /usr/lib/libKF5GlobalAccel.so.5
#9  0x00007f50d1a34300 in  () at /usr/lib/libQt5DBus.so.5
#10 0x00007f50cffa050f in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#11 0x00007f50d0c4ed62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
    at /usr/lib/libQt5Widgets.so.5
#12 0x00007f50cff733ba in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#13 0x00007f50cff764b9 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) ()
Comment 1 Antonio Rojas 2021-09-30 16:45:23 UTC
Forgot to mention: this is on Wayland (and it's a regression wrt 5.22)
Comment 2 Bug Janitor Service 2021-10-01 06:13:18 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/1483
Comment 3 Vlad Zahorodnii 2021-10-01 08:08:18 UTC
Git commit 21da7b7ed801f7a9b826a5f1d6cb7d31be0c6f4b by Vlad Zahorodnii.
Committed on 01/10/2021 at 08:07.
Pushed by vladz into branch 'master'.

effects/thumbnailaside: Fix crash in clientArea()

clientArea() was changed to forbid "-1" screen ids, but it seems like
the thumbnail aside effect can pass it to refer to the active screen.

This change makes the thumbnail aside effect handle "-1" screen id case
explicitly. It will be also useful for EffectScreen transition.

M  +5    -1    src/effects/thumbnailaside/thumbnailaside.cpp

https://invent.kde.org/plasma/kwin/commit/21da7b7ed801f7a9b826a5f1d6cb7d31be0c6f4b
Comment 4 Vlad Zahorodnii 2021-10-01 08:09:00 UTC
Git commit e0cdb69569ad057cc16f4a0deb5f9d2b0b53fd8f by Vlad Zahorodnii.
Committed on 01/10/2021 at 08:08.
Pushed by vladz into branch 'Plasma/5.23'.

effects/thumbnailaside: Fix crash in clientArea()

clientArea() was changed to forbid "-1" screen ids, but it seems like
the thumbnail aside effect can pass it to refer to the active screen.

This change makes the thumbnail aside effect handle "-1" screen id case
explicitly. It will be also useful for EffectScreen transition.


(cherry picked from commit 21da7b7ed801f7a9b826a5f1d6cb7d31be0c6f4b)

M  +5    -1    src/effects/thumbnailaside/thumbnailaside.cpp

https://invent.kde.org/plasma/kwin/commit/e0cdb69569ad057cc16f4a0deb5f9d2b0b53fd8f