diff --git a/gnu/local.mk b/gnu/local.mk index 7b3d314993..18e8b211f7 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1435,6 +1435,7 @@ dist_patch_DATA = \ %D%/packages/patches/texinfo-5-perl-compat.patch \ %D%/packages/patches/texlive-bin-poppler-0.83.patch \ %D%/packages/patches/telegram-purple-adjust-test.patch \ + %D%/packages/patches/telepathy-glib-channel-memory-leak.patch \ %D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-i18n.patch \ %D%/packages/patches/thefuck-test-environ.patch \ diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index e6f1cf819f..d25959b928 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -805,6 +805,7 @@ (define telepathy-glib "1symyzbjmxvksn2ifdkk50lafjm2llf2sbmky062gq2pz3cg23cy")) (patches (list + (search-patch "telepathy-glib-channel-memory-leak.patch") ;; Don't use the same test name for multiple tests. ;; (origin diff --git a/gnu/packages/patches/telepathy-glib-channel-memory-leak.patch b/gnu/packages/patches/telepathy-glib-channel-memory-leak.patch new file mode 100644 index 0000000000..fe07548ec0 --- /dev/null +++ b/gnu/packages/patches/telepathy-glib-channel-memory-leak.patch @@ -0,0 +1,19 @@ +Prevent a memory leak in call-channel, which otherwise would cause a +test failure in file-transfer-channel.c. + +Taken from upstream: +https://gitlab.freedesktop.org/telepathy/telepathy-glib/commit/2e8b2cc0db09b781d99e3755bb6d01548037fe7b + +diff --git a/telepathy-glib/call-channel.c b/telepathy-glib/call-channel.c +index 8ed76323be32f83c5f4d6045a50bc1698d8093fd..2a1fa203d4be9f0c8b99344225f4ba9900666ffc 100644 +--- a/telepathy-glib/call-channel.c ++++ b/telepathy-glib/call-channel.c +@@ -525,6 +525,8 @@ update_call_members (TpCallChannel *self, + + _tp_channel_contacts_queue_prepare_async ((TpChannel *) self, + contacts, update_call_members_prepared_cb, data); ++ ++ g_ptr_array_unref (contacts); + } + + static void