diff --git a/src/compositor/compositor_api/qwaylandsurface.cpp b/src/compositor/compositor_api/qwaylandsurface.cpp index a8dc41fd52f771128482f9a213b24eb64b50f397..f1615521e4ff9803fb4c8193c9e6598065a98051 100644 --- a/src/compositor/compositor_api/qwaylandsurface.cpp +++ b/src/compositor/compositor_api/qwaylandsurface.cpp @@ -361,6 +361,10 @@ bool QWaylandSurface::sendInterfaceOp(QWaylandSurfaceOp &op) void QWaylandSurface::ping() { Q_D(QWaylandSurface); + + if (d->isDestroyed()) + return; + uint32_t serial = wl_display_next_serial(compositor()->waylandDisplay()); QWaylandSurfacePingOp op(serial); if (!sendInterfaceOp(op)) {