summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandsurface.cpp
diff options
context:
space:
mode:
authorGiulio Camuffo <giulio.camuffo@jollamobile.com>2014-10-23 18:37:16 +0300
committerGiulio Camuffo <giulio.camuffo@jollamobile.com>2014-10-28 09:52:16 +0100
commit7882407bb6bab6c042fd20592a63a875b74eb581 (patch)
tree811ad63b66919641735117260db76ee442ad0812 /src/compositor/compositor_api/qwaylandsurface.cpp
parent806ada3e8b8d1ea8f29c839f22963417f7c34a90 (diff)
Be more careful when destroying wl_resourcesv5.4.0-rc1v5.4.0
The compositor must not destroy wl_resources when it wants to, else it breaks the contract with the client. Change-Id: Ic0d298072cdf0954d2504c04bff2bcc99733e621 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src/compositor/compositor_api/qwaylandsurface.cpp')
-rw-r--r--src/compositor/compositor_api/qwaylandsurface.cpp9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/compositor/compositor_api/qwaylandsurface.cpp b/src/compositor/compositor_api/qwaylandsurface.cpp
index a4f4e1fdd..205cea7a3 100644
--- a/src/compositor/compositor_api/qwaylandsurface.cpp
+++ b/src/compositor/compositor_api/qwaylandsurface.cpp
@@ -330,14 +330,7 @@ void QWaylandSurface::destroySurface()
{
QWaylandSurfaceOp op(QWaylandSurfaceOp::Close);
if (!sendInterfaceOp(op))
- destroySurfaceByForce();
-}
-
-void QWaylandSurface::destroySurfaceByForce()
-{
- Q_D(QWaylandSurface);
- wl_resource *surface_resource = d->resource()->handle;
- wl_resource_destroy(surface_resource);
+ emit surfaceDestroyed();
}
/*!