D7885: Don't crash if a client (legally) uses deleted global contrast manager
davidedmundson added a comment. Found a better approach that we can use globally (pun not intended) If we track REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D7885 To: davidedmundson, #plasma, graesslin Cc: plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D7885: Don't crash if a client (legally) uses deleted global contrast manager
This revision was automatically updated to reflect the committed changes. Closed by commit R127:403f60929f11: Don't crash if a client (legally) uses deleted global contrast manager (authored by davidedmundson). REPOSITORY R127 KWayland CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D7885?vs=19690&id=19696 REVISION DETAIL https://phabricator.kde.org/D7885 AFFECTED FILES autotests/client/test_wayland_registry.cpp src/server/contrast_interface.cpp To: davidedmundson, #plasma, graesslin Cc: plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D7885: Don't crash if a client (legally) uses deleted global contrast manager
graesslin accepted this revision. This revision is now accepted and ready to land. REPOSITORY R127 KWayland BRANCH master REVISION DETAIL https://phabricator.kde.org/D7885 To: davidedmundson, #plasma, graesslin Cc: plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein
D7885: Don't crash if a client (legally) uses deleted global contrast manager
davidedmundson created this revision. davidedmundson added a reviewer: Plasma. Restricted Application added projects: Plasma on Wayland, Frameworks. Restricted Application added subscribers: Frameworks, plasma-devel. REVISION SUMMARY There is a race condition in the following situation: - Server creates a global - Client binds to that global (making a new resource for that global) Simultaneously: - The client uses this resource - The server deletes the global This was fixed for Blur, but as mention in that commit can also happen here. Code is effectively a copy and paste from https://phabricator.kde.org/R127:eaac3948f1499b638799f05b6b229ee30b02eb9a TEST PLAN Unit test. Booted normal session REPOSITORY R127 KWayland BRANCH master REVISION DETAIL https://phabricator.kde.org/D7885 AFFECTED FILES autotests/client/test_wayland_registry.cpp src/server/contrast_interface.cpp To: davidedmundson, #plasma Cc: plasma-devel, #frameworks, leezu, ZrenBot, alexeymin, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, eliasp, sebas, apol, mart, hein