From c0175fa92b7edd45a06e4ab16c8e83da0c94a9f6 Mon Sep 17 00:00:00 2001 From: Andreas Cadhalpun Date: Tue, 29 Nov 2016 00:43:27 +0100 Subject: [PATCH] idroqdec: fix leaking pkt on failure The code calls av_new_packet a few lines above and the allocated memory has to be freed in case of an error. Reviewed-by: Michael Niedermayer Signed-off-by: Andreas Cadhalpun --- libavformat/idroqdec.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavformat/idroqdec.c b/libavformat/idroqdec.c index 83701b59c5..8fd67a6818 100644 --- a/libavformat/idroqdec.c +++ b/libavformat/idroqdec.c @@ -222,8 +222,10 @@ static int roq_read_packet(AVFormatContext *s, pkt->pos= avio_tell(pb); ret = avio_read(pb, pkt->data + RoQ_CHUNK_PREAMBLE_SIZE, chunk_size); - if (ret != chunk_size) + if (ret != chunk_size) { + av_packet_unref(pkt); ret = AVERROR(EIO); + } packet_read = 1; break;