From: Andreas Rheinhardt Date: Sun, 10 Nov 2019 04:07:33 +0000 (+0100) Subject: avformat/mov: Use AV_DICT_DONT_STRDUP_VAL to avoid av_strdup X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=ad1b0a12f34d57ed5bfb952ce67bce8f48b3ec0e;p=ffmpeg avformat/mov: Use AV_DICT_DONT_STRDUP_VAL to avoid av_strdup This will likely also fix CID 1452574 and 1452565, false positives resulting from Coverity thinking that av_dict_set() automatically frees its key and value parameters (even without the AV_DICT_DONT_STRDUP_* flags). Signed-off-by: Andreas Rheinhardt Signed-off-by: Michael Niedermayer --- diff --git a/libavformat/mov.c b/libavformat/mov.c index 890c6e85b8a..589576b529e 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1129,8 +1129,8 @@ static int mov_read_ftyp(MOVContext *c, AVIOContext *pb, MOVAtom atom) return ret; } comp_brands_str[comp_brand_size] = 0; - av_dict_set(&c->fc->metadata, "compatible_brands", comp_brands_str, 0); - av_freep(&comp_brands_str); + av_dict_set(&c->fc->metadata, "compatible_brands", + comp_brands_str, AV_DICT_DONT_STRDUP_VAL); return 0; } @@ -5794,8 +5794,8 @@ static int mov_read_uuid(MOVContext *c, AVIOContext *pb, MOVAtom atom) return AVERROR_INVALIDDATA; } buffer[len] = '\0'; - av_dict_set(&c->fc->metadata, "xmp", buffer, 0); - av_free(buffer); + av_dict_set(&c->fc->metadata, "xmp", + buffer, AV_DICT_DONT_STRDUP_VAL); } else { // skip all uuid atom, which makes it fast for long uuid-xmp file ret = avio_skip(pb, len);