summaryrefslogtreecommitdiffstats
path: root/stream/stream_file.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-08-22 18:23:33 +0200
committerwm4 <wm4@nowhere>2013-08-22 19:14:26 +0200
commitf806e268c6c3a76f65b1282219e16fcdfb80a9b5 (patch)
tree66876fbc7d96308da11a91456d91ef90223bac23 /stream/stream_file.c
parenta790f2133bb785e0c48a7c6cdc730c8b7e8287fb (diff)
downloadmpv-f806e268c6c3a76f65b1282219e16fcdfb80a9b5.tar.bz2
mpv-f806e268c6c3a76f65b1282219e16fcdfb80a9b5.tar.xz
stream: don't require streams to set s->pos in seek callback
Instead, set s->pos depending on the success of the seek callback.
Diffstat (limited to 'stream/stream_file.c')
-rw-r--r--stream/stream_file.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/stream/stream_file.c b/stream/stream_file.c
index a8dcf8fbdb..87e77d7bf3 100644
--- a/stream/stream_file.c
+++ b/stream/stream_file.c
@@ -63,10 +63,7 @@ static int write_buffer(stream_t *s, char *buffer, int len)
static int seek(stream_t *s, int64_t newpos)
{
struct priv *p = s->priv;
- s->pos = newpos;
- if (lseek(p->fd, s->pos, SEEK_SET) < 0)
- return 0;
- return 1;
+ return lseek(p->fd, newpos, SEEK_SET) != (off_t)-1;
}
static int control(stream_t *s, int cmd, void *arg)