D22084: Span wayland objects to lifespan of the QApplication

David Edmundson noreply at phabricator.kde.org
Wed Jun 26 20:39:22 BST 2019


davidedmundson added inline comments.

INLINE COMMENTS

> zzag wrote in waylandintegration.cpp:125
> Is it okay to access waylandBlurManager() right after it's been deleted (or rather scheduled for removal)?

There's two questions here. I'll answer both.

---

Is it safe to call a method on BlurManager after the registry removes it?

It should be.

Typically protocols works as follows:

- server tells the client we're removing an interface

(it should then stops listening for events on that interface) and the registry removes it

- client calls release on the object
- only then does the wayland object get removed

That way we're race free.

Not all wayland globals behave quite the same, because that would be far too convenient!

----

If someone uses it after the QApp destruction could the QPA have got deleted in the meantime (and hit the original bug)

For any normal signal, maybe. But QApp is special QCoreApplication::execCleanup  happens before QGuiApp destructor which removes the

REPOSITORY
  R130 Frameworks integration plugin using KWayland

REVISION DETAIL
  https://phabricator.kde.org/D22084

To: davidedmundson, #plasma
Cc: apol, ngraham, anthonyfieroni, zzag, plasma-devel, LeGast00n, jraleigh, fbampaloukas, GB_2, ragreen, Pitel, ZrenBot, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20190626/7493e60a/attachment.html>


More information about the Plasma-devel mailing list