Jeyapal, Karthick:
> 
> On 11/29/19 10:45 AM, Steven Liu wrote:
>> Signed-off-by: Steven Liu <l...@chinaffmpeg.org>
>> ---
>>  libavformat/dashenc.c | 3 +--
>>  1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
>> index a462876c13..8c28fb6b6e 100644
>> --- a/libavformat/dashenc.c
>> +++ b/libavformat/dashenc.c
>> @@ -588,8 +588,7 @@ static void dash_free(AVFormatContext *s)
>>                  avio_close(os->ctx->pb);
>>          }
>>          ff_format_io_close(s, &os->out);
>> -        if (os->ctx)
>> -            avformat_free_context(os->ctx);
>> +        avformat_free_context(os->ctx);
> This 'if' condition is a safety net against double frees caused due to any 
> corner case and/or wrong usage.
> Unless this is absolutely required for some reason, this 'if' condition 
> should not be removed.

This 'if' doesn't help against double-frees at all:
avformat_free_context() itself checks against its argument being NULL
and returns immediately if it is. (But double frees are still possible
given that avformat_free_context can't reset the pointer to NULL due
to its signature. Resetting is something the callers have to do for
themselves.)

- Andreas
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to