From 02a5940a45182983c9ebf32b189bf52bd6696458 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 19 Nov 2012 16:13:56 +0100 Subject: [PATCH] range: handle parse errors better --- gst-libs/gst/rtsp/gstrtsprange.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gst-libs/gst/rtsp/gstrtsprange.c b/gst-libs/gst/rtsp/gstrtsprange.c index d77965c..76701fa 100644 --- a/gst-libs/gst/rtsp/gstrtsprange.c +++ b/gst-libs/gst/rtsp/gstrtsprange.c @@ -89,10 +89,13 @@ parse_npt_time (const gchar * str, GstRTSPTime * time) if (sscanf (str, "%2d:%2d:", &hours, &mins) != 2) return GST_RTSP_EINVAL; - str = strchr (str, ':') + 1; - str = strchr (str, ':') + 1; + str = strchr (str, ':'); + str = strchr (str + 1, ':'); + if (str == NULL) + return GST_RTSP_EINVAL; + time->type = GST_RTSP_TIME_SECONDS; - time->seconds = ((hours * 60) + mins) * 60 + gst_strtod (str); + time->seconds = ((hours * 60) + mins) * 60 + gst_strtod (str + 1); } else { time->type = GST_RTSP_TIME_SECONDS; time->seconds = gst_strtod (str); -- 2.7.4