diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2021-03-22 21:58:30 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2021-04-01 10:10:21 +0200 |
commit | 6055b93379fd29477afa8f24881223a14e2f6b81 (patch) | |
tree | d34f14382dd535f6838c4f85f76d1f801cb3ec57 /tools/target_dem_fuzzer.c | |
parent | f7a515044766426cf3cac20bdc091b700f00a458 (diff) | |
download | ffmpeg-6055b93379fd29477afa8f24881223a14e2f6b81.tar.gz |
tools/target_dem_fuzzer: Fix packet leak
Fixes: 32121/clusterfuzz-testcase-minimized-ffmpeg_IO_DEMUXER_fuzzer-4512973109460992
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'tools/target_dem_fuzzer.c')
-rw-r--r-- | tools/target_dem_fuzzer.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/tools/target_dem_fuzzer.c b/tools/target_dem_fuzzer.c index af1840b359..3c03c8d17c 100644 --- a/tools/target_dem_fuzzer.c +++ b/tools/target_dem_fuzzer.c @@ -186,10 +186,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { ret = avformat_open_input(&avfmt, filename, fmt, NULL); if (ret < 0) { - av_freep(&fuzzed_pb->buffer); - av_freep(&fuzzed_pb); - avformat_free_context(avfmt); - return 0; + goto fail; } ret = avformat_find_stream_info(avfmt, NULL); @@ -203,10 +200,12 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { av_packet_unref(pkt); } +fail: av_packet_free(&pkt); av_freep(&fuzzed_pb->buffer); avio_context_free(&fuzzed_pb); avformat_close_input(&avfmt); return 0; + } |