+2006-07-03 Tim-Philipp Müller <tim at centricular dot net>
+
+ * 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 <edward@fluendo.com>
* ext/libpng/gstpngdec.c: (gst_pngdec_init), (user_info_callback),
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 */
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)) {
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 */
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)) {