From: Rafaël Carré Date: Sun, 23 Jun 2013 21:00:33 +0000 (+0200) Subject: matroskaenc: restore compatibility with non referenced AVPacket X-Git-Tag: v10_alpha1~1302 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c3e58f8fb75d8467161a65b85eb88281547ebab1;p=platform%2Fupstream%2Flibav.git matroskaenc: restore compatibility with non referenced AVPacket Signed-off-by: Anton Khirnov --- diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 9f7b5f9..67d2350 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -1298,8 +1298,11 @@ static int mkv_write_packet(AVFormatContext *s, AVPacket *pkt) // keyframe's timecode is contained in the same cluster for WebM if (codec->codec_type == AVMEDIA_TYPE_AUDIO) { mkv->cur_audio_pkt = *pkt; - mkv->cur_audio_pkt.buf = av_buffer_ref(pkt->buf); - ret = mkv->cur_audio_pkt.buf ? 0 : AVERROR(ENOMEM); + if (pkt->buf) { + mkv->cur_audio_pkt.buf = av_buffer_ref(pkt->buf); + ret = mkv->cur_audio_pkt.buf ? 0 : AVERROR(ENOMEM); + } else + ret = av_dup_packet(&mkv->cur_audio_pkt); } else ret = mkv_write_packet_internal(s, pkt); return ret;