rtsp-client: remove query part from content-base string
authorPatricia Muscalu <patricia@axis.com>
Thu, 22 Aug 2013 10:10:39 +0000 (12:10 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Fri, 23 Aug 2013 10:23:06 +0000 (12:23 +0200)
Make sure that after the control url has been resolved, it's
not a part of the query-string.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=706568

gst/rtsp-server/rtsp-client.c

index 67dfe83..18a82da 100644 (file)
@@ -1632,7 +1632,7 @@ handle_describe_request (GstRTSPClient * client, GstRTSPContext * ctx)
   GstRTSPResult res;
   GstSDPMessage *sdp;
   guint i, str_len;
-  gchar *str, *content_base;
+  gchar *str, *str_query, *content_base;
   GstRTSPMedia *media;
   GstRTSPClientClass *klass;
 
@@ -1676,6 +1676,13 @@ handle_describe_request (GstRTSPClient * client, GstRTSPContext * ctx)
   str = gst_rtsp_url_get_request_uri (ctx->uri);
   str_len = strlen (str);
 
+  /* check for query part */
+  if (ctx->uri->query != NULL) {
+    str_query = g_strrstr (str, "?");
+    *str_query = '\0';
+    str_len = strlen (str);
+  }
+
   /* check for trailing '/' and append one */
   if (str[str_len - 1] != '/') {
     content_base = g_malloc (str_len + 2);