diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2007-09-12 21:23:47 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2007-09-12 21:23:47 +0000 |
commit | f6b7f47cf430393041bd4262ddac2bb51a3a8a1d (patch) | |
tree | 7da918d6c0e1fcc1b1ec181d6a53855d36f9e12f /gst/rtpmanager/gstrtpjitterbuffer.c | |
parent | 79800df8b6335e435e7e98c92784cdfe5f10d3c5 (diff) | |
download | gst-plugins-bad-f6b7f47cf430393041bd4262ddac2bb51a3a8a1d.tar.gz gst-plugins-bad-f6b7f47cf430393041bd4262ddac2bb51a3a8a1d.tar.bz2 gst-plugins-bad-f6b7f47cf430393041bd4262ddac2bb51a3a8a1d.zip |
gst/rtpmanager/: Various leak fixes.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (create_session), (free_session),
(get_client), (free_client), (gst_rtp_bin_associate),
(free_stream), (gst_rtp_bin_class_init), (gst_rtp_bin_dispose),
(gst_rtp_bin_finalize):
* gst/rtpmanager/gstrtpjitterbuffer.c:
(gst_rtp_jitter_buffer_class_init),
(gst_rtp_jitter_buffer_finalize):
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_release):
* gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize),
(gst_rtp_session_set_property), (gst_rtp_session_chain_recv_rtp),
(gst_rtp_session_chain_send_rtp):
* gst/rtpmanager/gstrtpssrcdemux.c:
(gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_dispose):
* gst/rtpmanager/rtpsession.c: (rtp_session_finalize):
* gst/rtpmanager/rtpsession.h:
Various leak fixes.
Diffstat (limited to 'gst/rtpmanager/gstrtpjitterbuffer.c')
-rw-r--r-- | gst/rtpmanager/gstrtpjitterbuffer.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/gst/rtpmanager/gstrtpjitterbuffer.c b/gst/rtpmanager/gstrtpjitterbuffer.c index 08a55f2b..497ce89d 100644 --- a/gst/rtpmanager/gstrtpjitterbuffer.c +++ b/gst/rtpmanager/gstrtpjitterbuffer.c @@ -208,7 +208,7 @@ static void gst_rtp_jitter_buffer_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_rtp_jitter_buffer_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); -static void gst_rtp_jitter_buffer_dispose (GObject * object); +static void gst_rtp_jitter_buffer_finalize (GObject * object); /* element overrides */ static GstStateChangeReturn gst_rtp_jitter_buffer_change_state (GstElement @@ -256,7 +256,7 @@ gst_rtp_jitter_buffer_class_init (GstRtpJitterBufferClass * klass) g_type_class_add_private (klass, sizeof (GstRtpJitterBufferPrivate)); - gobject_class->dispose = GST_DEBUG_FUNCPTR (gst_rtp_jitter_buffer_dispose); + gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_rtp_jitter_buffer_finalize); gobject_class->set_property = gst_rtp_jitter_buffer_set_property; gobject_class->get_property = gst_rtp_jitter_buffer_get_property; @@ -370,17 +370,18 @@ gst_rtp_jitter_buffer_init (GstRtpJitterBuffer * jitterbuffer, } static void -gst_rtp_jitter_buffer_dispose (GObject * object) +gst_rtp_jitter_buffer_finalize (GObject * object) { GstRtpJitterBuffer *jitterbuffer; jitterbuffer = GST_RTP_JITTER_BUFFER (object); - if (jitterbuffer->priv->jbuf) { - g_object_unref (jitterbuffer->priv->jbuf); - jitterbuffer->priv->jbuf = NULL; - } - G_OBJECT_CLASS (parent_class)->dispose (object); + g_mutex_free (jitterbuffer->priv->jbuf_lock); + g_cond_free (jitterbuffer->priv->jbuf_cond); + + g_object_unref (jitterbuffer->priv->jbuf); + + G_OBJECT_CLASS (parent_class)->finalize (object); } static void |