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

Martin Gräßlin <mgraess...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Version Fixed In|                            |5.28
         Resolution|---                         |FIXED
             Status|CONFIRMED                   |RESOLVED
      Latest Commit|                            |http://commits.kde.org/kway
                   |                            |land/c0aa3a4a2f13b7ab36755c
                   |                            |3fac77b278bd842ed1

--- Comment #2 from Martin Gräßlin <mgraess...@kde.org> ---
Git commit c0aa3a4a2f13b7ab36755c3fac77b278bd842ed1 by Martin Gräßlin.
Committed on 11/10/2016 at 05:41.
Pushed by graesslin into branch 'master'.

[server] Use deleteLater when a ClientConnection gets destroyed

Summary:
In the situation that a wl_client gets destroyed while still
wl_resources are around it can happen that one of them calls into the
ClientConnection during the cleanup handling which gets triggered at the
same time. This can then trigger a crash.

This change uses deleteLater for the ClientConnection and sets the hold
wl_client pointer to null instead of deleting directly. So the
ClientConnection is still around while the Resources gets cleaned up.
This is similar to the cleanup of Resource where on unbind the
wl_resource pointer is set to null and the Resource gets delete later.
FIXED-IN: 5.28

Reviewers: #plasma, bshah

Subscribers: plasma-devel

Tags: #plasma_on_wayland

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

M  +42   -0    autotests/client/test_wayland_shell.cpp
M  +3    -0    autotests/server/test_display.cpp
M  +20   -3    src/server/clientconnection.cpp

http://commits.kde.org/kwayland/c0aa3a4a2f13b7ab36755c3fac77b278bd842ed1

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

Reply via email to