diff --git a/src/compositor/compositor_api/qwaylandsurface.cpp b/src/compositor/compositor_api/qwaylandsurface.cpp
index 205cea7a3aa86b29f8dbcea75fe212618038d6ac..54b38109f2dad96b037e68f4782bbdb723bf38ce 100644
--- a/src/compositor/compositor_api/qwaylandsurface.cpp
+++ b/src/compositor/compositor_api/qwaylandsurface.cpp
@@ -92,6 +92,8 @@ QWaylandSurface::~QWaylandSurface()
 WaylandClient *QWaylandSurface::client() const
 {
     Q_D(const QWaylandSurface);
+    if (d->isDestroyed())
+        return Q_NULLPTR;
     return d->resource()->client();
 }