x11-selection: Plug MetaSelectionSourceX11 leak

meta_selection_source_x11_new_finish() transfers the ownership of the
selection source, but source_new_cb() was not freeing it.

Fixes https://gitlab.gnome.org/GNOME/mutter/issues/998
https://gitlab.gnome.org/GNOME/mutter/merge_requests/1001

(cherry picked from commit 8e6821bc65)
This commit is contained in:
Sebastian Keller 2020-01-11 03:31:02 +01:00 committed by Robert Mader
parent 7fbba4ad14
commit 50f383d2e9

View File

@ -297,6 +297,7 @@ source_new_cb (GObject *object,
{ {
meta_selection_set_owner (selection, selection_type, source); meta_selection_set_owner (selection, selection_type, source);
g_set_object (&x11_display->selection.owners[selection_type], source); g_set_object (&x11_display->selection.owners[selection_type], source);
g_object_unref (source);
} }
else if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) else if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
{ {