[mutter] wayland: do not crash if the surface is gone
- From: Olivier Fourdan <ofourdan src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] wayland: do not crash if the surface is gone
- Date: Wed, 9 Sep 2015 07:49:15 +0000 (UTC)
commit 443d579d402d82ae6b178036266f46576f9e2fbc
Author: Olivier Fourdan <ofourdan redhat com>
Date: Tue Sep 8 11:52:10 2015 +0200
wayland: do not crash if the surface is gone
If a queued event is being processed after the surface is
destroyed, trying to access the window associated with the surface
will lead to a segmentation fault.
This patch avoids the crash by first checking if the surface is not null.
https://bugzilla.gnome.org/show_bug.cgi?id=754715
src/compositor/meta-surface-actor-wayland.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
---
diff --git a/src/compositor/meta-surface-actor-wayland.c b/src/compositor/meta-surface-actor-wayland.c
index d89f6dc..4e3ae8d 100644
--- a/src/compositor/meta-surface-actor-wayland.c
+++ b/src/compositor/meta-surface-actor-wayland.c
@@ -293,8 +293,12 @@ static MetaWindow *
meta_surface_actor_wayland_get_window (MetaSurfaceActor *actor)
{
MetaSurfaceActorWaylandPrivate *priv = meta_surface_actor_wayland_get_instance_private
(META_SURFACE_ACTOR_WAYLAND (actor));
+ MetaWaylandSurface *surface = priv->surface;
- return priv->surface->window;
+ if (!surface)
+ return NULL;
+
+ return surface->window;
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]