avformat/vqf: Check avio_read() in add_metadata()

Fixes: use of uninitialized data
Fixes: 383825642/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5380168801124352

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2024-12-26 01:46:49 +01:00
parent 54897da7ce
commit c43dbecbda
No known key found for this signature in database
GPG key ID: B18E8928B3948D64

View file

@ -63,7 +63,8 @@ static void add_metadata(AVFormatContext *s, uint32_t tag,
buf = av_malloc(len+1);
if (!buf)
return;
avio_read(s->pb, buf, len);
if (len != avio_read(s->pb, buf, len))
return;
buf[len] = 0;
AV_WL32(key, tag);
av_dict_set(&s->metadata, key, buf, AV_DICT_DONT_STRDUP_VAL);