diff --git a/ChangeLog b/ChangeLog index 4de7d4d825..948fd05d7f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2006-07-03 Tim-Philipp Müller + + * gst/apetag/gsttagdemux.c: (gst_tag_demux_chain): + * gst/id3demux/gstid3demux.c: (gst_id3demux_chain): + Return FLOW_UNEXPECTED when at the end of the file, not + FLOW_ERROR. Fixes 'internal stream error' errors that + would sometimes occur in totem when scrubbing to the + end of an ID3v1 tagged mp3 file. + 2006-07-03 Edward Hervey * ext/libpng/gstpngdec.c: (gst_pngdec_init), (user_info_callback), diff --git a/gst/apetag/gsttagdemux.c b/gst/apetag/gsttagdemux.c index a1fac5e35b..2aa23f44e5 100644 --- a/gst/apetag/gsttagdemux.c +++ b/gst/apetag/gsttagdemux.c @@ -557,7 +557,7 @@ gst_tag_demux_chain (GstPad * pad, GstBuffer * buf) typefind_buf = demux->priv->collect; gst_buffer_ref (typefind_buf); if (!gst_tag_demux_trim_buffer (demux, &typefind_buf)) - return GST_FLOW_ERROR; + return GST_FLOW_UNEXPECTED; if (typefind_buf == NULL) break; /* Still need more data */ @@ -609,7 +609,7 @@ gst_tag_demux_chain (GstPad * pad, GstBuffer * buf) outbuf = demux->priv->collect; demux->priv->collect = NULL; if (!gst_tag_demux_trim_buffer (demux, &outbuf)) - return GST_FLOW_ERROR; + return GST_FLOW_UNEXPECTED; } if (outbuf) { if (G_UNLIKELY (demux->priv->srcpad == NULL)) { diff --git a/gst/id3demux/gstid3demux.c b/gst/id3demux/gstid3demux.c index d2f215734d..b498639f2c 100644 --- a/gst/id3demux/gstid3demux.c +++ b/gst/id3demux/gstid3demux.c @@ -444,7 +444,7 @@ gst_id3demux_chain (GstPad * pad, GstBuffer * buf) typefind_buf = id3demux->collect; gst_buffer_ref (typefind_buf); if (!gst_id3demux_trim_buffer (id3demux, &typefind_buf)) - return GST_FLOW_ERROR; + return GST_FLOW_UNEXPECTED; if (typefind_buf == NULL) break; /* Still need more data */ @@ -507,7 +507,7 @@ gst_id3demux_chain (GstPad * pad, GstBuffer * buf) outbuf = id3demux->collect; id3demux->collect = NULL; if (!gst_id3demux_trim_buffer (id3demux, &outbuf)) - return GST_FLOW_ERROR; + return GST_FLOW_UNEXPECTED; } if (outbuf) { if (G_UNLIKELY (id3demux->srcpad == NULL)) {