diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-09-24 14:26:31 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-09-24 14:26:31 +0000 |
commit | 8e6272e8322c71b5396c0c203c499cb45278b002 (patch) | |
tree | 5e01ed9e5a7aba2f450fccf5a4c737ed95b26451 | |
parent | abfb2f049a97c2f514e4a19ef2d47e81bab19b95 (diff) |
Make fill_buffer function check for stream eof, fixes hang at eof (bug #580)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19966 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpdemux/demux_real.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libmpdemux/demux_real.c b/libmpdemux/demux_real.c index d145eb33e0..cd0a40280c 100644 --- a/libmpdemux/demux_real.c +++ b/libmpdemux/demux_real.c @@ -569,7 +569,7 @@ static int demux_real_fill_buffer(demuxer_t *demuxer, demux_stream_t *dsds) int x, sps, cfs, sph, spc, w; int audioreorder_getnextpk = 0; - while(1){ + while(!stream_eof(demuxer->stream)){ /* Handle audio/video demxing switch for multirate files (non-interleaved) */ if (priv->is_multirate && priv->stream_switch) { @@ -1075,6 +1075,7 @@ if((unsigned)stream_id<MAX_STREAMS){ discard: stream_skip(demuxer->stream, len); }// goto loop; + return 0; } extern void print_wave_header(WAVEFORMATEX *h, int verbose_level); |