avformat/jacosubdec: Cleanup when avpriv_bprint_to_extradata() fails

Fixes memleaks
Fixes: asan_heap-oob_4d2250_814_cov_2745172097_JACOsub_capability_tester.jss
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-11-25 15:20:02 +01:00
parent 3d5d95db3f
commit 8cd80b5fcb

View File

@ -232,7 +232,7 @@ static int jacosub_read_header(AVFormatContext *s)
/* general/essential directives in the extradata */
ret = avpriv_bprint_to_extradata(st->codec, &header);
if (ret < 0)
return ret;
goto fail;
/* SHIFT and TIMERES affect the whole script so packet timing can only be
* done in a second pass */
@ -243,6 +243,9 @@ static int jacosub_read_header(AVFormatContext *s)
ff_subtitles_queue_finalize(&jacosub->q);
return 0;
fail:
jacosub_read_close(s);
return ret;
}
static int jacosub_read_packet(AVFormatContext *s, AVPacket *pkt)