summaryrefslogtreecommitdiff
path: root/transmitters
diff options
context:
space:
mode:
authorOlivier CrĂȘte <olivier.crete@collabora.com>2013-02-28 16:52:33 -0500
committerOlivier CrĂȘte <olivier.crete@collabora.com>2013-02-28 16:52:33 -0500
commit45b9a3fe974a72140cdfda21c0e98f16dd8cc4e6 (patch)
tree5d0294701ffaca232eb8dc4fbd6bf8bb6b828e5c /transmitters
parent7a453aff93040adf414d5bc7af34b214d51a471f (diff)
downloadfarstream-45b9a3fe974a72140cdfda21c0e98f16dd8cc4e6.tar.gz
shm: Fix funnelpad leak
Diffstat (limited to 'transmitters')
-rw-r--r--transmitters/shm/fs-shm-transmitter.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/transmitters/shm/fs-shm-transmitter.c b/transmitters/shm/fs-shm-transmitter.c
index b548608a..49cfdd9f 100644
--- a/transmitters/shm/fs-shm-transmitter.c
+++ b/transmitters/shm/fs-shm-transmitter.c
@@ -695,6 +695,13 @@ fs_shm_transmitter_check_shm_src (FsShmTransmitter *self, ShmSrc *shm,
gst_pad_remove_probe (shm->funnelpad, shm->buffer_probe);
shm->buffer_probe = 0;
+ if (shm->funnelpad) {
+ gst_element_release_request_pad (self->priv->funnels[shm->component],
+ shm->funnelpad);
+ gst_object_unref (shm->funnelpad);
+ }
+ shm->funnelpad = NULL;
+
if (shm->src)
{
gst_element_set_locked_state (shm->src, TRUE);