diff options
author | James Almer <jamrial@gmail.com> | 2021-01-31 13:20:20 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2021-03-17 15:19:37 -0300 |
commit | 64f092eb5e12cfcaca1677c5c1c6fed27762587f (patch) | |
tree | 934a4aded9654c2398ecfe79e5077bab57ee8175 | |
parent | 08dbcaa57a3b6db11a96b1a601fb83e10d320a57 (diff) | |
download | ffmpeg-64f092eb5e12cfcaca1677c5c1c6fed27762587f.tar.gz |
tools/target_dem_fuzzer: use av_packet_alloc() to allocate packets
Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r-- | tools/target_dem_fuzzer.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/tools/target_dem_fuzzer.c b/tools/target_dem_fuzzer.c index 8ff98af945..af1840b359 100644 --- a/tools/target_dem_fuzzer.c +++ b/tools/target_dem_fuzzer.c @@ -96,7 +96,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { const uint64_t fuzz_tag = FUZZ_TAG; uint32_t it = 0; AVFormatContext *avfmt = avformat_alloc_context(); - AVPacket pkt; + AVPacket *pkt; char filename[1025] = {0}; AVIOContext *fuzzed_pb = NULL; uint8_t *io_buffer; @@ -165,6 +165,10 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { if (!io_buffer_size || size / io_buffer_size > maxblocks) io_buffer_size = size; + pkt = av_packet_alloc(); + if (!pkt) + error("Failed to allocate pkt"); + io_buffer = av_malloc(io_buffer_size); if (!io_buffer) error("Failed to allocate io_buffer"); @@ -190,17 +194,16 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { ret = avformat_find_stream_info(avfmt, NULL); - av_init_packet(&pkt); - //TODO, test seeking for(it = 0; it < maxiteration; it++) { - ret = av_read_frame(avfmt, &pkt); + ret = av_read_frame(avfmt, pkt); if (ret < 0) break; - av_packet_unref(&pkt); + av_packet_unref(pkt); } + av_packet_free(&pkt); av_freep(&fuzzed_pb->buffer); avio_context_free(&fuzzed_pb); avformat_close_input(&avfmt); |