mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
mov: Avoid memcmp of uninitialised data
The string codec name need not be as long as the value we are comparing it to, so memcmp may make decisions derived from uninitialised data that valgrind then complains about (though the overall result of the function will always be the same). Use strncmp instead, which will stop at the first zero byte and therefore not encounter this issue.
This commit is contained in:
parent
ca62236a89
commit
708e84cda1
@ -1455,11 +1455,11 @@ static void mov_parse_stsd_video(MOVContext *c, AVIOContext *pb,
|
||||
av_dict_set(&st->metadata, "encoder", codec_name, 0);
|
||||
|
||||
/* codec_tag YV12 triggers an UV swap in rawdec.c */
|
||||
if (!memcmp(codec_name, "Planar Y'CbCr 8-bit 4:2:0", 25))
|
||||
if (!strncmp(codec_name, "Planar Y'CbCr 8-bit 4:2:0", 25))
|
||||
st->codecpar->codec_tag = MKTAG('I', '4', '2', '0');
|
||||
/* Flash Media Server uses tag H.263 with Sorenson Spark */
|
||||
if (st->codecpar->codec_tag == MKTAG('H','2','6','3') &&
|
||||
!memcmp(codec_name, "Sorenson H263", 13))
|
||||
!strncmp(codec_name, "Sorenson H263", 13))
|
||||
st->codecpar->codec_id = AV_CODEC_ID_FLV1;
|
||||
|
||||
st->codecpar->bits_per_coded_sample = avio_rb16(pb); /* depth */
|
||||
|
Loading…
Reference in New Issue
Block a user