summaryrefslogtreecommitdiff
path: root/src/demuxers
diff options
context:
space:
mode:
authorDarren Salt <linux@youmustbejoking.demon.co.uk>2009-01-04 18:17:20 +0000
committerDarren Salt <linux@youmustbejoking.demon.co.uk>2009-01-04 18:17:20 +0000
commit04f5017df9827e1bc4cd66df38346e411c0c1b82 (patch)
tree95c1d8a3f6bef24dffac5102a4d0d14193477f6a /src/demuxers
parenta251dc779c6eaf0d29b126b02877fc10838aaec0 (diff)
parentc4ca0e127e4c3407df8268ec6320576f98c83567 (diff)
downloadxine-lib-04f5017df9827e1bc4cd66df38346e411c0c1b82.tar.gz
xine-lib-04f5017df9827e1bc4cd66df38346e411c0c1b82.tar.bz2
Merge from 1.1.
Diffstat (limited to 'src/demuxers')
-rw-r--r--src/demuxers/demux_wav.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/demuxers/demux_wav.c b/src/demuxers/demux_wav.c
index 280288baa..bfabfad38 100644
--- a/src/demuxers/demux_wav.c
+++ b/src/demuxers/demux_wav.c
@@ -209,11 +209,16 @@ static int demux_wav_send_chunk(demux_plugin_t *this_gen) {
buf->size = remaining_sample_bytes;
remaining_sample_bytes -= buf->size;
- if (this->input->read(this->input, buf->content, buf->size) !=
+ off_t read;
+ if ((read = this->input->read(this->input, buf->content, buf->size)) !=
buf->size) {
- buf->free_buffer(buf);
- this->status = DEMUX_FINISHED;
- break;
+ if (read == 0) {
+ buf->free_buffer(buf);
+ this->status = DEMUX_FINISHED;
+ break;
+ } else {
+ buf->size = read;
+ }
}
#if 0