From 5465c912c726f297497f5c3ff798d66dbb0f1a58 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Mon, 20 Apr 2020 16:47:49 +0200 Subject: [PATCH] x11: Generalize x11 selection owner checks Shuffle things so the x11 selection can check the current owner directly, instead of its type. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1206 (cherry picked from commit a7e63bea6cac06216ed2f2b98b7112d41b704c36) --- src/x11/meta-x11-selection.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/x11/meta-x11-selection.c b/src/x11/meta-x11-selection.c index b2d524f35..4f628d1f7 100644 --- a/src/x11/meta-x11-selection.c +++ b/src/x11/meta-x11-selection.c @@ -297,8 +297,8 @@ source_new_cb (GObject *object, source = meta_selection_source_x11_new_finish (res, &error); if (source) { - meta_selection_set_owner (selection, selection_type, source); g_set_object (&x11_display->selection.owners[selection_type], source); + meta_selection_set_owner (selection, selection_type, source); g_object_unref (source); } else if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) @@ -382,7 +382,7 @@ notify_selection_owner (MetaX11Display *x11_display, { Display *xdisplay = x11_display->xdisplay; - if (new_owner && !META_IS_SELECTION_SOURCE_X11 (new_owner)) + if (new_owner && new_owner != x11_display->selection.owners[selection_type]) { if (x11_display->selection.cancellables[selection_type]) {