Don't crash if a client (legally) uses deleted global contrast manager

Authored by davidedmundson on Sep 20 2017, 1:16 PM.

Description

Don't crash if a client (legally) uses deleted global contrast manager

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 eaac3948f1499b638799f05b6b229ee30b02eb9a

Test Plan: Unit test. Booted normal session

Reviewers: Plasma

Subscribers: plasma-devel, Frameworks

Tags: Plasma on Wayland, Frameworks

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