[FFmpeg-devel] [PATCH 1/3] avcodec/libopusenc: Don't free user-provided AVPacket

Andreas Rheinhardt andreas.rheinhardt at gmail.com
Sat May 23 23:01:51 EEST 2020


James Almer:
> On 5/23/2020 7:44 AM, Andreas Rheinhardt wrote:
>> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
>> ---
>>  libavcodec/libopusenc.c | 2 --
>>  1 file changed, 2 deletions(-)
>>
>> diff --git a/libavcodec/libopusenc.c b/libavcodec/libopusenc.c
>> index 7c025a66d7..13017ac323 100644
>> --- a/libavcodec/libopusenc.c
>> +++ b/libavcodec/libopusenc.c
>> @@ -503,7 +503,6 @@ static int libopus_encode(AVCodecContext *avctx, AVPacket *avpkt,
>>      // Check if subtraction resulted in an overflow
>>      if ((discard_padding < opus->opts.packet_size) != (avpkt->duration > 0)) {
>>          av_packet_unref(avpkt);
>> -        av_free(avpkt);
>>          return AVERROR(EINVAL);
>>      }
>>      if (discard_padding > 0) {
>> @@ -512,7 +511,6 @@ static int libopus_encode(AVCodecContext *avctx, AVPacket *avpkt,
>>                                                       10);
>>          if(!side_data) {
>>              av_packet_unref(avpkt);
>> -            av_free(avpkt);
>>              return AVERROR(ENOMEM);
>>          }
>>          AV_WL32(side_data + 4, discard_padding);
> 
> LGTM of course. And please backport it.

Applied and backported up to 2.8.

- Andreas


More information about the ffmpeg-devel mailing list