https://bugs.kde.org/show_bug.cgi?id=390314

Martin Flöser <mgraess...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
      Latest Commit|                            |https://commits.kde.org/kwi
                   |                            |n/2ea5153e1c979760c56bd81f3
                   |                            |d47f2fb373130c9
   Version Fixed In|                            |5.12.3
         Resolution|---                         |FIXED

--- Comment #19 from Martin Flöser <mgraess...@kde.org> ---
Git commit 2ea5153e1c979760c56bd81f3d47f2fb373130c9 by Martin Flöser.
Committed on 04/03/2018 at 08:42.
Pushed by graesslin into branch 'Plasma/5.12'.

Don't crash if the cursor theme fails to create

Summary:
If the cursor theme failed to create KWin crashed due to an endless
recursion. There are two reasons for this fault:
1) When the physical size does not exist we perform a division by 0
which results in an invalid size going into wl_cursor_theme_load
2) We emit the signal that the cursor theme changed even if it didn't
change thus creating an endless recursion

This change addresses both problems: it checks that the size is not 0
and changes the handling for theme update to only destroy the previous
theme if the new theme could be created and only emits the signal if
things change.
FIXED-IN: 5.12.3

Test Plan: Added a new test case which crashed with old code

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D10549

M  +1    -0    autotests/integration/CMakeLists.txt
A  +124  -0    autotests/integration/dont_crash_cursor_physical_size_empty.cpp 
   [License: GPL (v2)]
M  +17   -9    wayland_cursor_theme.cpp

https://commits.kde.org/kwin/2ea5153e1c979760c56bd81f3d47f2fb373130c9

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to