gst_plugins_base/gst-libs/gst/rtsp/gstrtsprange.c
branchRCL_3
changeset 30 7e817e7e631c
parent 29 567bb019e3e3
--- a/gst_plugins_base/gst-libs/gst/rtsp/gstrtsprange.c	Tue Aug 31 15:30:33 2010 +0300
+++ b/gst_plugins_base/gst-libs/gst/rtsp/gstrtsprange.c	Wed Sep 01 12:16:41 2010 +0100
@@ -69,7 +69,7 @@
 static GstRTSPResult
 parse_npt_time (const gchar * str, GstRTSPTime * time)
 {
-  if (strncmp (str, "now", 3) == 0) {
+  if (strcmp (str, "now") == 0) {
     time->type = GST_RTSP_TIME_NOW;
   } else if (str[0] == '\0') {
     time->type = GST_RTSP_TIME_END;
@@ -167,10 +167,9 @@
   } else
     goto invalid;
 
-  if (ret != GST_RTSP_OK)
-    goto invalid;
+  if (ret == GST_RTSP_OK)
+    *range = res;
 
-  *range = res;
   return ret;
 
   /* ERRORS */
@@ -181,88 +180,6 @@
   }
 }
 
-static gboolean
-npt_time_string (const GstRTSPTime * time, GString * string)
-{
-  gboolean res = TRUE;;
-
-  switch (time->type) {
-    case GST_RTSP_TIME_SECONDS:
-      g_string_append_printf (string, "%f", time->seconds);
-      break;
-    case GST_RTSP_TIME_NOW:
-      g_string_append (string, "now");
-      break;
-    case GST_RTSP_TIME_END:
-      break;
-    default:
-      res = FALSE;
-      break;
-  }
-  return res;
-}
-
-static gboolean
-npt_range_string (const GstRTSPTimeRange * range, GString * string)
-{
-  gboolean res;
-
-  if (!(res = npt_time_string (&range->min, string)))
-    goto done;
-
-  g_string_append (string, "-");
-
-  if (!(res = npt_time_string (&range->max, string)))
-    goto done;
-
-done:
-  return res;
-}
-
-/**
- * gst_rtsp_range_to_string:
- * @range: a #GstRTSPTimeRange
- *
- * Convert @range into a string representation.
- *
- * Returns: The string representation of @range. g_free() after usage.
- *
- * Since: 0.10.23
- */
-gchar *
-gst_rtsp_range_to_string (const GstRTSPTimeRange * range)
-{
-  gchar *result = NULL;
-  GString *string;
-
-  g_return_val_if_fail (range != NULL, NULL);
-
-  string = g_string_new ("");
-
-  switch (range->unit) {
-    case GST_RTSP_RANGE_NPT:
-      g_string_append (string, "npt=");
-      if (!npt_range_string (range, string)) {
-        g_string_free (string, TRUE);
-        string = NULL;
-      }
-      break;
-    case GST_RTSP_RANGE_SMPTE:
-    case GST_RTSP_RANGE_SMPTE_30_DROP:
-    case GST_RTSP_RANGE_SMPTE_25:
-    case GST_RTSP_RANGE_CLOCK:
-    default:
-      g_warning ("time range unit not yet implemented");
-      g_string_free (string, TRUE);
-      string = NULL;
-      break;
-  }
-  if (string)
-    result = g_string_free (string, FALSE);
-
-  return result;
-}
-
 /**
  * gst_rtsp_range_free:
  * @range: a #GstRTSPTimeRange
@@ -272,5 +189,8 @@
 void
 gst_rtsp_range_free (GstRTSPTimeRange * range)
 {
+  if (range == NULL)
+    return;
+
   g_free (range);
 }