Summary: | Kwin segfaults when trying to git commit using "-S" option (GPG sign) | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Nico <dr460nf1r3> |
Component: | wayland-generic | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | major | Keywords: | wayland |
Priority: | NOR | Flags: | dr460nf1r3:
Wayland+
dr460nf1r3: Intel+ dr460nf1r3: Mesa+ |
Version: | git master | ||
Target Milestone: | --- | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/commit/a177061b51179129c769456e1af204fb66a2b83d | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: | Backtrace |
Description
Nico
2021-05-15 08:43:38 UTC
Can you please provide the backtrace of the crash? Created attachment 138450 [details]
Backtrace
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/998 Nico, can you please test the patch? Yep, compiled from the branch specified branch and commiting works now without crash. A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/1004 Git commit 2d9e2f0c701fbd57ab6b6584106b54124f52bdaf by Vlad Zahorodnii. Committed on 18/05/2021 at 12:28. Pushed by vladz into branch 'master'. effects: Fix EffectWindow::shape() for X11 windows With the introduction of scene items, the Scene::Window::bufferShape() method was removed as it makes no sense on wayland - a window may have several sub-surfaces, so a single region to indicate the shape of the window won't work. SurfaceItem::shape() returns the shape of a surface. On Wayland, it corresponds to the rect of the wl_surface. On X11, it corresponds to the client window rect inside the frame window, or custom shape region if the client has set one. On the other hand, EffectWindow::shape() wants a completely different thing. If the window is decorated, it needs to return the rect of the decoration. Otherwise it has to return the shape region if there's one. In the future, the EffectWindow::shape() function must be removed as it doesn't fit the item based design. The main reason why we have it at all is because the x server doesn't support translucency, setting a shape region is a (hacky) way to work around that limitation, xeyes is a notable example. Related: bug 435862 M +9 -2 src/effects.cpp https://invent.kde.org/plasma/kwin/commit/2d9e2f0c701fbd57ab6b6584106b54124f52bdaf Git commit a177061b51179129c769456e1af204fb66a2b83d by Vlad Zahorodnii. Committed on 18/05/2021 at 12:29. Pushed by vladz into branch 'Plasma/5.22'. effects: Fix EffectWindow::shape() for X11 windows With the introduction of scene items, the Scene::Window::bufferShape() method was removed as it makes no sense on wayland - a window may have several sub-surfaces, so a single region to indicate the shape of the window won't work. SurfaceItem::shape() returns the shape of a surface. On Wayland, it corresponds to the rect of the wl_surface. On X11, it corresponds to the client window rect inside the frame window, or custom shape region if the client has set one. On the other hand, EffectWindow::shape() wants a completely different thing. If the window is decorated, it needs to return the rect of the decoration. Otherwise it has to return the shape region if there's one. In the future, the EffectWindow::shape() function must be removed as it doesn't fit the item based design. The main reason why we have it at all is because the x server doesn't support translucency, setting a shape region is a (hacky) way to work around that limitation, xeyes is a notable example. Related: bug 435862 (cherry picked from commit 2d9e2f0c701fbd57ab6b6584106b54124f52bdaf) M +9 -2 src/effects.cpp https://invent.kde.org/plasma/kwin/commit/a177061b51179129c769456e1af204fb66a2b83d |