From b109694c1d78f9c7883aa934ce53221c96739a17 Mon Sep 17 00:00:00 2001 From: Hyunjun Ko Date: Thu, 3 Dec 2015 17:51:02 +0900 Subject: [PATCH] client: makes handle_play_request inheritable Change-Id: I1a0449d7610d1d1019eee880ed18873c148f0d0c --- gst/rtsp-server/rtsp-client.c | 8 ++++++-- gst/rtsp-server/rtsp-client.h | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gst/rtsp-server/rtsp-client.c b/gst/rtsp-server/rtsp-client.c index 13ccf36..05ff274 100644 --- a/gst/rtsp-server/rtsp-client.c +++ b/gst/rtsp-server/rtsp-client.c @@ -161,6 +161,9 @@ static gboolean default_handle_set_param_request (GstRTSPClient * client, GstRTSPContext * ctx); static gboolean default_handle_get_param_request (GstRTSPClient * client, GstRTSPContext * ctx); +static gboolean default_handle_play_request (GstRTSPClient * client, + GstRTSPContext * ctx); + static void client_session_removed (GstRTSPSessionPool * pool, GstRTSPSession * session, GstRTSPClient * client); @@ -189,6 +192,7 @@ gst_rtsp_client_class_init (GstRTSPClientClass * klass) klass->handle_options_request = default_handle_options_request; klass->handle_set_param_request = default_handle_set_param_request; klass->handle_get_param_request = default_handle_get_param_request; + klass->handle_play_request = default_handle_play_request; g_object_class_install_property (gobject_class, PROP_SESSION_POOL, g_param_spec_object ("session-pool", "Session Pool", @@ -1127,7 +1131,7 @@ make_base_url (GstRTSPClient * client, GstRTSPUrl * url, const gchar * path) } static gboolean -handle_play_request (GstRTSPClient * client, GstRTSPContext * ctx) +default_handle_play_request (GstRTSPClient * client, GstRTSPContext * ctx) { GstRTSPSession *session; GstRTSPClientClass *klass; @@ -2861,7 +2865,7 @@ handle_request (GstRTSPClient * client, GstRTSPMessage * request) handle_setup_request (client, ctx); break; case GST_RTSP_PLAY: - handle_play_request (client, ctx); + klass->handle_play_request (client, ctx); break; case GST_RTSP_PAUSE: handle_pause_request (client, ctx); diff --git a/gst/rtsp-server/rtsp-client.h b/gst/rtsp-server/rtsp-client.h index 9b6d879..13fa2d1 100644 --- a/gst/rtsp-server/rtsp-client.h +++ b/gst/rtsp-server/rtsp-client.h @@ -106,6 +106,7 @@ struct _GstRTSPClientClass { gboolean (*handle_options_request) (GstRTSPClient * client, GstRTSPContext * ctx); gboolean (*handle_set_param_request) (GstRTSPClient * client, GstRTSPContext * ctx); gboolean (*handle_get_param_request) (GstRTSPClient * client, GstRTSPContext * ctx); + gboolean (*handle_play_request) (GstRTSPClient * client, GstRTSPContext * ctx); /* signals */ void (*closed) (GstRTSPClient *client); @@ -132,7 +133,7 @@ struct _GstRTSPClientClass { gchar* (*check_requirements) (GstRTSPClient *client, GstRTSPContext *ctx, gchar ** arr); /*< private >*/ - gpointer _gst_reserved[GST_PADDING_LARGE-9]; + gpointer _gst_reserved[GST_PADDING_LARGE-10]; }; GType gst_rtsp_client_get_type (void); -- 2.7.4