From 9b7cb2a4effd0ef664692d1d9c19c3a0a2124cb4 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20P=C3=B6lsterl?= Date: Sat, 18 Apr 2009 16:10:59 +0200 Subject: [PATCH] Added finalize function to GstRTPSPServer to unref session pool and media mapping --- gst/rtsp-server/rtsp-server.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gst/rtsp-server/rtsp-server.c b/gst/rtsp-server/rtsp-server.c index e9c965e..0d1353d 100644 --- a/gst/rtsp-server/rtsp-server.c +++ b/gst/rtsp-server/rtsp-server.c @@ -41,6 +41,7 @@ static void gst_rtsp_server_get_property (GObject *object, guint propid, GValue *value, GParamSpec *pspec); static void gst_rtsp_server_set_property (GObject *object, guint propid, const GValue *value, GParamSpec *pspec); +static void gst_rtsp_server_finalize (GObject *object); static GstRTSPClient * default_accept_client (GstRTSPServer *server, GIOChannel *channel); @@ -54,6 +55,7 @@ gst_rtsp_server_class_init (GstRTSPServerClass * klass) gobject_class->get_property = gst_rtsp_server_get_property; gobject_class->set_property = gst_rtsp_server_set_property; + gobject_class->finalize = gst_rtsp_server_finalize; /** * GstRTSPServer::backlog @@ -111,6 +113,15 @@ gst_rtsp_server_init (GstRTSPServer * server) server->media_mapping = gst_rtsp_media_mapping_new (); } +static void +gst_rtsp_server_finalize (GObject *object) +{ + GstRTSPServer *server = GST_RTSP_SERVER (object); + + g_object_unref (server->session_pool); + g_object_unref (server->media_mapping); +} + /** * gst_rtsp_server_new: * -- 2.7.4