diff options
Diffstat (limited to 'stream/stream_smb.c')
-rw-r--r-- | stream/stream_smb.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/stream/stream_smb.c b/stream/stream_smb.c index ab32ea0d3a..6b79d072dd 100644 --- a/stream/stream_smb.c +++ b/stream/stream_smb.c @@ -45,10 +45,11 @@ static int control(stream_t *s, int cmd, void *arg) { off_t size = smbc_lseek(p->fd,0,SEEK_END); smbc_lseek(p->fd,s->pos,SEEK_SET); if(size != (off_t)-1) { - *(uint64_t *)arg = size; + *(int64_t *)arg = size; return 1; } } + break; } return STREAM_UNSUPPORTED; } @@ -131,9 +132,8 @@ static int open_f (stream_t *stream, int mode) smbc_lseek (fd, 0, SEEK_SET); } if(len > 0 || mode == STREAM_WRITE) { - stream->flags |= MP_STREAM_SEEK; + stream->seekable = true; stream->seek = seek; - if(mode == STREAM_READ) stream->end_pos = len; } priv->fd = fd; stream->fill_buffer = fill_buffer; |