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

Vlad Zagorodniy <vladz...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
   Version Fixed In|                            |5.15.0
      Latest Commit|                            |https://commits.kde.org/kwi
                   |                            |n/295138145ca2cc0b8b9d637f6
                   |                            |071298d356084d0
             Status|CONFIRMED                   |RESOLVED

--- Comment #20 from Vlad Zagorodniy <vladz...@gmail.com> ---
Git commit 295138145ca2cc0b8b9d637f6071298d356084d0 by Vlad Zagorodniy.
Committed on 02/12/2018 at 17:59.
Pushed by vladz into branch 'master'.

Make sure that effect windows outlive effects

Summary:
Compositing is suspended/finished in a very hard way fashion, effect
windows are destroyed without notifying effects about it.

AnimationEffect tries gracefully release deleted windows, but because
in some cases(like when suspending compositing) a deleted window can
be already destroyed, a segmentation fault can happen.

This change adjusts the order in which effect windows and effects are
destroyed, so AnimationEffect (and other effects) cannot access dangling
pointers.
FIXED-IN: 5.15.0

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: graesslin, kwin

Tags: #kwin

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

M  +1    -0    autotests/integration/CMakeLists.txt
A  +150  -0    autotests/integration/dont_crash_reinitialize_compositor.cpp    
[License: GPL (v2)]
M  +7    -2    composite.cpp
M  +13   -0    effects.cpp
M  +9    -0    effects.h

https://commits.kde.org/kwin/295138145ca2cc0b8b9d637f6071298d356084d0

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

Reply via email to