[FFmpeg-cvslog] idcin: fix memleaks in idcin_read_packet()

Justin Ruggles git at videolan.org
Thu Jan 17 13:50:36 CET 2013


ffmpeg | branch: master | Justin Ruggles <justin.ruggles at gmail.com> | Tue Jan 15 16:20:57 2013 -0500| [b805c725a31f6cb05c488e485eb6ab370a851633] | committer: Justin Ruggles

idcin: fix memleaks in idcin_read_packet()

Fixes fate-id-cin-video failures when running FATE with valgrind.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b805c725a31f6cb05c488e485eb6ab370a851633
---

 libavformat/idcin.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libavformat/idcin.c b/libavformat/idcin.c
index b7e87a7..18da918 100644
--- a/libavformat/idcin.c
+++ b/libavformat/idcin.c
@@ -309,6 +309,7 @@ static int idcin_read_packet(AVFormatContext *s,
             return ret;
         else if (ret != chunk_size) {
             av_log(s, AV_LOG_ERROR, "incomplete packet\n");
+            av_free_packet(pkt);
             return AVERROR(EIO);
         }
         if (command == 1) {
@@ -316,8 +317,10 @@ static int idcin_read_packet(AVFormatContext *s,
 
             pal = av_packet_new_side_data(pkt, AV_PKT_DATA_PALETTE,
                                           AVPALETTE_SIZE);
-            if (ret < 0)
+            if (ret < 0) {
+                av_free_packet(pkt);
                 return ret;
+            }
             memcpy(pal, palette, AVPALETTE_SIZE);
             pkt->flags |= AV_PKT_FLAG_KEY;
         }



More information about the ffmpeg-cvslog mailing list