diff options
author | Martin Storsjö <martin@martin.st> | 2011-11-06 23:11:29 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2011-11-13 13:20:49 +0100 |
commit | 9d77a8faf9568f02daf06903559473efb4050c34 (patch) | |
tree | 1cb114b4b834a7a5ba94665f13971ca821973d69 /libavformat | |
parent | 1dee0aca7401fc6c01f23ceedaff6533efb0fb28 (diff) | |
download | ffmpeg-9d77a8faf9568f02daf06903559473efb4050c34.tar.gz |
avformat: Use avio_open2, pass the AVFormatContext interrupt_callback onwards
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diffstat (limited to 'libavformat')
-rw-r--r-- | libavformat/applehttp.c | 3 | ||||
-rw-r--r-- | libavformat/applehttpproto.c | 3 | ||||
-rw-r--r-- | libavformat/img2.c | 6 | ||||
-rw-r--r-- | libavformat/mov.c | 7 | ||||
-rw-r--r-- | libavformat/utils.c | 3 |
5 files changed, 14 insertions, 8 deletions
diff --git a/libavformat/applehttp.c b/libavformat/applehttp.c index 74d9f781e3..e0773ae87f 100644 --- a/libavformat/applehttp.c +++ b/libavformat/applehttp.c @@ -210,7 +210,8 @@ static int parse_playlist(AppleHTTPContext *c, const char *url, if (!in) { close_in = 1; - if ((ret = avio_open(&in, url, AVIO_FLAG_READ)) < 0) + if ((ret = avio_open2(&in, url, AVIO_FLAG_READ, + c->interrupt_callback, NULL)) < 0) return ret; } diff --git a/libavformat/applehttpproto.c b/libavformat/applehttpproto.c index 2123423452..0e64dadb39 100644 --- a/libavformat/applehttpproto.c +++ b/libavformat/applehttpproto.c @@ -114,7 +114,8 @@ static int parse_playlist(URLContext *h, const char *url) char line[1024]; const char *ptr; - if ((ret = avio_open(&in, url, AVIO_FLAG_READ)) < 0) + if ((ret = avio_open2(&in, url, AVIO_FLAG_READ, + &h->interrupt_callback, NULL)) < 0) return ret; read_chomp_line(in, line, sizeof(line)); diff --git a/libavformat/img2.c b/libavformat/img2.c index 25c3f7656a..547f23fe0a 100644 --- a/libavformat/img2.c +++ b/libavformat/img2.c @@ -304,7 +304,8 @@ static int read_packet(AVFormatContext *s1, AVPacket *pkt) s->path, s->img_number)<0 && s->img_number > 1) return AVERROR(EIO); for(i=0; i<3; i++){ - if (avio_open(&f[i], filename, AVIO_FLAG_READ) < 0) { + if (avio_open2(&f[i], filename, AVIO_FLAG_READ, + &s1->interrupt_callback, NULL) < 0) { if(i==1) break; av_log(s1, AV_LOG_ERROR, "Could not open file : %s\n",filename); @@ -388,7 +389,8 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR(EIO); } for(i=0; i<3; i++){ - if (avio_open(&pb[i], filename, AVIO_FLAG_WRITE) < 0) { + if (avio_open2(&pb[i], filename, AVIO_FLAG_WRITE, + &s->interrupt_callback, NULL) < 0) { av_log(s, AV_LOG_ERROR, "Could not open file : %s\n",filename); return AVERROR(EIO); } diff --git a/libavformat/mov.c b/libavformat/mov.c index 351058c968..ced60cbbb7 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1770,7 +1770,8 @@ static void mov_build_index(MOVContext *mov, AVStream *st) } } -static int mov_open_dref(AVIOContext **pb, char *src, MOVDref *ref) +static int mov_open_dref(AVIOContext **pb, char *src, MOVDref *ref, + AVIOInterruptCB *int_cb) { /* try relative path, we do not try the absolute because it can leak information about our system to an attacker */ @@ -1805,7 +1806,7 @@ static int mov_open_dref(AVIOContext **pb, char *src, MOVDref *ref) av_strlcat(filename, ref->path + l + 1, 1024); - if (!avio_open(pb, filename, AVIO_FLAG_READ)) + if (!avio_open2(pb, filename, AVIO_FLAG_READ, int_cb, NULL)) return 0; } } @@ -1860,7 +1861,7 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom) if (sc->dref_id-1 < sc->drefs_count && sc->drefs[sc->dref_id-1].path) { MOVDref *dref = &sc->drefs[sc->dref_id - 1]; - if (mov_open_dref(&sc->pb, c->fc->filename, dref) < 0) + if (mov_open_dref(&sc->pb, c->fc->filename, dref, &c->fc->interrupt_callback) < 0) av_log(c->fc, AV_LOG_ERROR, "stream %d, error opening alias: path='%s', dir='%s', " "filename='%s', volume='%s', nlvl_from=%d, nlvl_to=%d\n", diff --git a/libavformat/utils.c b/libavformat/utils.c index 91760c89ab..399b709961 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -593,7 +593,8 @@ static int init_input(AVFormatContext *s, const char *filename) (!s->iformat && (s->iformat = av_probe_input_format(&pd, 0)))) return 0; - if ((ret = avio_open(&s->pb, filename, AVIO_FLAG_READ)) < 0) + if ((ret = avio_open2(&s->pb, filename, AVIO_FLAG_READ, + &s->interrupt_callback, NULL)) < 0) return ret; if (s->iformat) return 0; |