diff options
author | Andreas Rheinhardt | 2019-10-06 07:01:11 +0200 |
---|---|---|
committer | Michael Niedermayer | 2019-10-06 20:00:59 +0200 |
commit | 670fd3b0ec8f81f7cb69932715562ddcd55096ec (patch) | |
tree | 327d97699b4d0da4c98140e4ef38a220a2c70bfe | |
parent | 5f758c31f9af6550a657ec2785c8c34838924e76 (diff) |
avformat/mpjpegdec: Avoid allocation of AVIOContext
Put an AVIOContext whose lifetime doesn't extend beyond the function where
it is allocated on the stack instead of allocating and freeing it.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavformat/mpjpegdec.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/libavformat/mpjpegdec.c b/libavformat/mpjpegdec.c index e653b5cc93..84130ab718 100644 --- a/libavformat/mpjpegdec.c +++ b/libavformat/mpjpegdec.c @@ -113,20 +113,16 @@ static int mpjpeg_read_close(AVFormatContext *s) static int mpjpeg_read_probe(const AVProbeData *p) { - AVIOContext *pb; + AVIOContext pb; int ret = 0; int size = 0; if (p->buf_size < 2 || p->buf[0] != '-' || p->buf[1] != '-') return 0; - pb = avio_alloc_context(p->buf, p->buf_size, 0, NULL, NULL, NULL, NULL); - if (!pb) - return 0; - - ret = (parse_multipart_header(pb, &size, "--", NULL) >= 0) ? AVPROBE_SCORE_MAX : 0; + ffio_init_context(&pb, p->buf, p->buf_size, 0, NULL, NULL, NULL, NULL); - avio_context_free(&pb); + ret = (parse_multipart_header(&pb, &size, "--", NULL) >= 0) ? AVPROBE_SCORE_MAX : 0; return ret; } |