diff options
author | Robert Mader <robert.mader@posteo.de> | 2019-06-30 15:03:32 +0200 |
---|---|---|
committer | Jonas Ã…dahl <jadahl@gmail.com> | 2019-08-27 08:55:51 +0000 |
commit | a3c97ee53598d916267dc19e6f94eeb057a1e779 (patch) | |
tree | 5ea689639b4d6bf21556f4be29d86da2fb6a890a | |
parent | 77229f99b882ba4e9b09b31617175fdb653738f6 (diff) | |
download | mutter-a3c97ee53598d916267dc19e6f94eeb057a1e779.tar.gz |
surface-actor-wayland: Handle stex being disposed
As the MetaShapedTexture might already got finalized, this can lead to a crash.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/755
-rw-r--r-- | src/compositor/meta-surface-actor-wayland.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/compositor/meta-surface-actor-wayland.c b/src/compositor/meta-surface-actor-wayland.c index 27c600c59..1c933d554 100644 --- a/src/compositor/meta-surface-actor-wayland.c +++ b/src/compositor/meta-surface-actor-wayland.c @@ -131,10 +131,12 @@ meta_surface_actor_wayland_dispose (GObject *object) { MetaSurfaceActorWayland *self = META_SURFACE_ACTOR_WAYLAND (object); MetaWaylandFrameCallback *cb, *next; - MetaShapedTexture *stex = - meta_surface_actor_get_texture (META_SURFACE_ACTOR (self)); + MetaShapedTexture *stex; + + stex = meta_surface_actor_get_texture (META_SURFACE_ACTOR (self)); + if (stex) + meta_shaped_texture_set_texture (stex, NULL); - meta_shaped_texture_set_texture (stex, NULL); if (self->surface) { g_object_remove_weak_pointer (G_OBJECT (self->surface), |