[FFmpeg-devel] [PATCH 1/7] avformat/dss: Use AV_DICT_DONT_STRDUP_VAL to save a malloc+memcpy

Andreas Rheinhardt andreas.rheinhardt at gmail.com
Wed Mar 25 00:07:16 EET 2020


Paul B Mahol:
> lgtm
> 
> On 11/10/19, Andreas Rheinhardt <andreas.rheinhardt at gmail.com> wrote:
>> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
>> ---
>>  libavformat/dss.c | 10 +++-------
>>  1 file changed, 3 insertions(+), 7 deletions(-)
>>
>> diff --git a/libavformat/dss.c b/libavformat/dss.c
>> index d7f9cafe47..8bc6af134e 100644
>> --- a/libavformat/dss.c
>> +++ b/libavformat/dss.c
>> @@ -103,15 +103,11 @@ static int dss_read_metadata_string(AVFormatContext
>> *s, unsigned int offset,
>>
>>      ret = avio_read(s->pb, value, size);
>>      if (ret < size) {
>> -        ret = ret < 0 ? ret : AVERROR_EOF;
>> -        goto exit;
>> +        av_free(value);
>> +        return ret < 0 ? ret : AVERROR_EOF;
>>      }
>>
>> -    ret = av_dict_set(&s->metadata, key, value, 0);
>> -
>> -exit:
>> -    av_free(value);
>> -    return ret;
>> +    return av_dict_set(&s->metadata, key, value, AV_DICT_DONT_STRDUP_VAL);
>>  }
>>
>>  static int dss_read_header(AVFormatContext *s)
>> --
>> 2.20.1
>>
Applied, thanks.

- Andreas


More information about the ffmpeg-devel mailing list