From: Michael Smith Date: Fri, 2 Jun 2006 14:07:42 +0000 (+0000) Subject: ext/ogg/gstoggdemux.c: Don't accidently send GST_CLOCK_TIME_NONE as a new segment... X-Git-Tag: RELEASE-0_10_8~14 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9bfe8602347949869164ca09cdf0b3e4b280beaa;p=platform%2Fupstream%2Fgst-plugins-base.git ext/ogg/gstoggdemux.c: Don't accidently send GST_CLOCK_TIME_NONE as a new segment start value. Fixes g-critical on tr... Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_demux_perform_seek): Don't accidently send GST_CLOCK_TIME_NONE as a new segment start value. Fixes g-critical on trying to play back ogg containing unknown codec. --- diff --git a/ChangeLog b/ChangeLog index b9ae110..cbac714 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2006-06-02 Michael Smith + + * ext/ogg/gstoggdemux.c: (gst_ogg_demux_perform_seek): + Don't accidently send GST_CLOCK_TIME_NONE as a new segment start + value. Fixes g-critical on trying to play back ogg containing + unknown codec. + 2006-06-02 Wim Taymans * gst/playback/gstplaybasebin.c: (group_create), (group_commit), diff --git a/ext/ogg/gstoggdemux.c b/ext/ogg/gstoggdemux.c index bbb987e..9be82ca 100644 --- a/ext/ogg/gstoggdemux.c +++ b/ext/ogg/gstoggdemux.c @@ -2049,6 +2049,7 @@ gst_ogg_demux_perform_seek (GstOggDemux * ogg, GstEvent * event) { GstEvent *event; gint64 stop; + gint64 start; /* we have to send the flush to the old chain, not the new one */ if (flush) @@ -2060,10 +2061,13 @@ gst_ogg_demux_perform_seek (GstOggDemux * ogg, GstEvent * event) if (stop != -1) stop += chain->segment_start; + start = ogg->segment.last_stop; + if (chain->segment_start != GST_CLOCK_TIME_NONE) + start += chain->segment_start; + /* create the segment event we are going to send out */ event = gst_event_new_new_segment (FALSE, ogg->segment.rate, - ogg->segment.format, - ogg->segment.last_stop + chain->segment_start, stop, ogg->segment.time); + ogg->segment.format, start, stop, ogg->segment.time); if (chain != ogg->current_chain) { /* switch to different chain, send segment on new chain */