On Sun, 1 Oct 2017 23:17:59 -0300 James Almer <jamr...@gmail.com> wrote:
> Signed-off-by: James Almer <jamr...@gmail.com> > --- > libavcodec/encode.c | 20 ++++++++++++-------- > 1 file changed, 12 insertions(+), 8 deletions(-) > > diff --git a/libavcodec/encode.c b/libavcodec/encode.c > index 525ee1f5d6..dd50486bcf 100644 > --- a/libavcodec/encode.c > +++ b/libavcodec/encode.c > @@ -222,10 +222,12 @@ int attribute_align_arg > avcodec_encode_audio2(AVCodecContext *avctx, > } > avpkt->buf = user_pkt.buf; > avpkt->data = user_pkt.data; > - } else { > - if (av_dup_packet(avpkt) < 0) { > - ret = AVERROR(ENOMEM); > - } > + } else if (!avpkt->buf) { > + AVPacket tmp = { 0 }; > + ret = av_packet_ref(&tmp, avpkt); > + if (ret < 0) > + return ret; > + *avpkt = tmp; > } > } > > @@ -318,10 +320,12 @@ int attribute_align_arg > avcodec_encode_video2(AVCodecContext *avctx, > } > avpkt->buf = user_pkt.buf; > avpkt->data = user_pkt.data; > - } else { > - if (av_dup_packet(avpkt) < 0) { > - ret = AVERROR(ENOMEM); > - } > + } else if (!avpkt->buf) { > + AVPacket tmp = { 0 }; > + ret = av_packet_ref(&tmp, avpkt); > + if (ret < 0) > + return ret; > + *avpkt = tmp; > } > } > LGTM, isn't this legacy code though? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel