diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c index 2b25faa882..191ab214a1 100644 --- a/gdk/wayland/gdkwindow-wayland.c +++ b/gdk/wayland/gdkwindow-wayland.c @@ -4027,7 +4027,8 @@ xdg_exported_handle (void *data, GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl); impl->exported.callback (window, handle, impl->exported.user_data); - impl->exported.user_data = NULL; + g_clear_pointer (&impl->exported.user_data, + impl->exported.destroy_func); } static const struct zxdg_exported_v1_listener xdg_exported_listener = {