# HG changeset patch # User albeu # Date 1142519062 0 # Node ID ab0a3e3d32eded006bd295316db2064d096350d3 # Parent 16cf7bfd99d9b06f400a73c47542794d6cd75ba0 Fix a potential seek failure, fill_buffer doesn't have to fill the whole buffer. diff -r 16cf7bfd99d9 -r ab0a3e3d32ed libmpdemux/stream.c --- a/libmpdemux/stream.c Wed Mar 15 23:20:27 2006 +0000 +++ b/libmpdemux/stream.c Thu Mar 16 14:24:22 2006 +0000 @@ -324,11 +324,13 @@ // putchar('%');fflush(stdout); } - stream_fill_buffer(s); - if(pos>=0 && pos<=s->buf_len){ +while(stream_fill_buffer(s) > 0 && pos >= 0) { + if(pos<=s->buf_len){ s->buf_pos=pos; // byte position in sector return 1; } + pos -= s->buf_len; +} // if(pos==s->buf_len) printf("XXX Seek to last byte of file -> EOF\n");