diff options
author | James Cowgill <jcowgill@debian.org> | 2018-10-03 09:34:22 +0100 |
---|---|---|
committer | James Cowgill <jcowgill@debian.org> | 2018-10-03 09:34:22 +0100 |
commit | 53c5af1f24eb774765dc0ec81c6457a6a2f84076 (patch) | |
tree | b3b785d0d7f8e1bbc050acd6f0c85868d333c8f3 /stream/stream_file.c | |
parent | 7fb3e8f1e88579eff44672d7fa3103f4b078303e (diff) | |
parent | a6680ec06c4f17bb7b60c18ebd611ef40c5c6d68 (diff) |
Update upstream source from tag 'upstream/0.29.1'
Update to upstream version '0.29.1'
with Debian dir 31f7cc19e4c61d2b1ab2b256ef78d996fe64b422
Diffstat (limited to 'stream/stream_file.c')
-rw-r--r-- | stream/stream_file.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/stream/stream_file.c b/stream/stream_file.c index 5cf6355..a905780 100644 --- a/stream/stream_file.c +++ b/stream/stream_file.c @@ -121,16 +121,16 @@ static int fill_buffer(stream_t *s, char *buffer, int max_len) static int write_buffer(stream_t *s, char *buffer, int len) { struct priv *p = s->priv; - int r; - int wr = 0; - while (wr < len) { - r = write(p->fd, buffer, len); - if (r <= 0) + int r = len; + int wr; + while (r > 0) { + wr = write(p->fd, buffer, r); + if (wr <= 0) return -1; - wr += r; - buffer += r; + r -= wr; + buffer += wr; } - return len; + return len - r; } static int seek(stream_t *s, int64_t newpos) |