summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorphintuka <phintuka>2009-02-16 16:34:57 +0000
committerphintuka <phintuka>2009-02-16 16:34:57 +0000
commitb4f0b134ddba4ded662a0cbf34de8fdea67509fd (patch)
tree149a514df6e7f303b9a5e10a9a303e22195f0323
parent2a908b4f3ab249e23b5c0e1f75f6a2fb4ad729af (diff)
downloadxineliboutput-b4f0b134ddba4ded662a0cbf34de8fdea67509fd.tar.gz
xineliboutput-b4f0b134ddba4ded662a0cbf34de8fdea67509fd.tar.bz2
BUF_CONTROL_FLUSH_DECODER only to video fifo
-rw-r--r--xine/demux_xvdr.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/xine/demux_xvdr.c b/xine/demux_xvdr.c
index a2909674..0ad9bdac 100644
--- a/xine/demux_xvdr.c
+++ b/xine/demux_xvdr.c
@@ -196,6 +196,15 @@ static void demux_xvdr_parse_pack (demux_xvdr_t *this)
return;
}
+ if (buf->type == BUF_CONTROL_FLUSH_DECODER) {
+ /* decoder flush only to video fifo */
+ this->stream->video_fifo->put(this->stream->video_fifo, buf);
+ return;
+ }
+
+ if ((buf->type & BUF_MAJOR_MASK) != BUF_CONTROL_BASE)
+ LOGMSG("buffer type %08x != BUF_DEMUX_BLOCK", buf->type);
+
/* duplicate goes to audio fifo */
if (this->audio_fifo) {
buf_element_t *cbuf = this->audio_fifo->buffer_pool_alloc (this->audio_fifo);