summaryrefslogtreecommitdiff
path: root/libavformat/async.c
diff options
context:
space:
mode:
authorZhang Rui <bbcallen@gmail.com>2015-09-07 14:54:49 +0800
committerMichael Niedermayer <michael@niedermayer.cc>2015-09-07 13:15:44 +0200
commitb821aed706292047290d8a739629fa8486328878 (patch)
tree003c9ddf0fa473f82320b6b0a3b64f7c3dd42e46 /libavformat/async.c
parent1964aeae42fd54aecbaa15836bec3ad15e17b237 (diff)
avformat/async: fix integer conversion warning
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/async.c')
-rw-r--r--libavformat/async.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/libavformat/async.c b/libavformat/async.c
index 15355fb697..003212d5b6 100644
--- a/libavformat/async.c
+++ b/libavformat/async.c
@@ -50,7 +50,7 @@ typedef struct Context {
URLContext *inner;
int seek_request;
- size_t seek_pos;
+ int64_t seek_pos;
int seek_whence;
int seek_completed;
int64_t seek_ret;
@@ -58,8 +58,8 @@ typedef struct Context {
int io_error;
int io_eof_reached;
- size_t logical_pos;
- size_t logical_size;
+ int64_t logical_pos;
+ int64_t logical_size;
AVFifoBuffer *fifo;
pthread_cond_t cond_wakeup_main;
@@ -91,6 +91,7 @@ static void *async_buffer_task(void *arg)
Context *c = h->priv_data;
AVFifoBuffer *fifo = c->fifo;
int ret = 0;
+ int64_t seek_ret;
while (1) {
int fifo_space, to_copy;
@@ -105,17 +106,17 @@ static void *async_buffer_task(void *arg)
}
if (c->seek_request) {
- ret = ffurl_seek(c->inner, c->seek_pos, c->seek_whence);
- if (ret < 0) {
+ seek_ret = ffurl_seek(c->inner, c->seek_pos, c->seek_whence);
+ if (seek_ret < 0) {
c->io_eof_reached = 1;
- c->io_error = ret;
+ c->io_error = (int)seek_ret;
} else {
c->io_eof_reached = 0;
c->io_error = 0;
}
c->seek_completed = 1;
- c->seek_ret = ret;
+ c->seek_ret = seek_ret;
c->seek_request = 0;
av_fifo_reset(fifo);
@@ -325,7 +326,7 @@ static int64_t async_seek(URLContext *h, int64_t pos, int whence)
av_log(h, AV_LOG_TRACE, "async_seek: fask_seek %"PRId64" from %d dist:%d/%d\n",
new_logical_pos, (int)c->logical_pos,
(int)(new_logical_pos - c->logical_pos), fifo_size);
- async_read_internal(h, NULL, new_logical_pos - c->logical_pos, 1, fifo_do_not_copy_func);
+ async_read_internal(h, NULL, (int)(new_logical_pos - c->logical_pos), 1, fifo_do_not_copy_func);
return c->logical_pos;
} else if (c->logical_size <= 0) {
/* can not seek */
@@ -394,8 +395,8 @@ URLProtocol ff_async_protocol = {
typedef struct TestContext {
AVClass *class;
- size_t logical_pos;
- size_t logical_size;
+ int64_t logical_pos;
+ int64_t logical_size;
} TestContext;
static int async_test_open(URLContext *h, const char *arg, int flags, AVDictionary **options)