[FFmpeg-cvslog] r20251 - in trunk/libavcodec: huffyuv.c mjpegdec.c pnmenc.c

cehoyos subversion
Fri Oct 16 16:50:08 CEST 2009


Author: cehoyos
Date: Fri Oct 16 16:50:08 2009
New Revision: 20251

Log:
Release unreleased buffers found by make test.

Modified:
   trunk/libavcodec/huffyuv.c
   trunk/libavcodec/mjpegdec.c
   trunk/libavcodec/pnmenc.c

Modified: trunk/libavcodec/huffyuv.c
==============================================================================
--- trunk/libavcodec/huffyuv.c	Fri Oct 16 16:46:06 2009	(r20250)
+++ trunk/libavcodec/huffyuv.c	Fri Oct 16 16:50:08 2009	(r20251)
@@ -1185,6 +1185,9 @@ static av_cold int decode_end(AVCodecCon
     HYuvContext *s = avctx->priv_data;
     int i;
 
+    if (s->picture.data[0])
+        avctx->release_buffer(avctx, &s->picture);
+
     common_end(s);
     av_freep(&s->bitstream_buffer);
 

Modified: trunk/libavcodec/mjpegdec.c
==============================================================================
--- trunk/libavcodec/mjpegdec.c	Fri Oct 16 16:46:06 2009	(r20250)
+++ trunk/libavcodec/mjpegdec.c	Fri Oct 16 16:50:08 2009	(r20251)
@@ -1494,6 +1494,9 @@ av_cold int ff_mjpeg_decode_end(AVCodecC
     MJpegDecodeContext *s = avctx->priv_data;
     int i, j;
 
+    if (s->picture.data[0])
+        avctx->release_buffer(avctx, &s->picture);
+
     av_free(s->buffer);
     av_free(s->qscale_table);
 

Modified: trunk/libavcodec/pnmenc.c
==============================================================================
--- trunk/libavcodec/pnmenc.c	Fri Oct 16 16:46:06 2009	(r20250)
+++ trunk/libavcodec/pnmenc.c	Fri Oct 16 16:50:08 2009	(r20251)
@@ -328,6 +328,15 @@ static int pam_encode_frame(AVCodecConte
     return s->bytestream - s->bytestream_start;
 }
 
+static av_cold int common_end(AVCodecContext *avctx){
+    PNMContext *s = avctx->priv_data;
+
+    if (s->picture.data[0])
+        avctx->release_buffer(avctx, &s->picture);
+
+    return 0;
+}
+
 #if 0
 static int pnm_probe(AVProbeData *pd)
 {
@@ -371,7 +380,7 @@ AVCodec pgm_decoder = {
     sizeof(PNMContext),
     common_init,
     NULL,
-    NULL,
+    common_end,
     pnm_decode_frame,
     CODEC_CAP_DR1,
     .pix_fmts= (const enum PixelFormat[]){PIX_FMT_GRAY8, PIX_FMT_GRAY16BE, PIX_FMT_NONE},
@@ -400,7 +409,7 @@ AVCodec pgmyuv_decoder = {
     sizeof(PNMContext),
     common_init,
     NULL,
-    NULL,
+    common_end,
     pnm_decode_frame,
     CODEC_CAP_DR1,
     .pix_fmts= (const enum PixelFormat[]){PIX_FMT_YUV420P, PIX_FMT_NONE},
@@ -429,7 +438,7 @@ AVCodec ppm_decoder = {
     sizeof(PNMContext),
     common_init,
     NULL,
-    NULL,
+    common_end,
     pnm_decode_frame,
     CODEC_CAP_DR1,
     .pix_fmts= (const enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB48BE, PIX_FMT_NONE},
@@ -458,7 +467,7 @@ AVCodec pbm_decoder = {
     sizeof(PNMContext),
     common_init,
     NULL,
-    NULL,
+    common_end,
     pnm_decode_frame,
     CODEC_CAP_DR1,
     .pix_fmts= (const enum PixelFormat[]){PIX_FMT_MONOWHITE, PIX_FMT_NONE},
@@ -487,7 +496,7 @@ AVCodec pam_decoder = {
     sizeof(PNMContext),
     common_init,
     NULL,
-    NULL,
+    common_end,
     pnm_decode_frame,
     CODEC_CAP_DR1,
     .pix_fmts= (const enum PixelFormat[]){PIX_FMT_RGB24, PIX_FMT_RGB32, PIX_FMT_GRAY8, PIX_FMT_MONOWHITE, PIX_FMT_NONE},



More information about the ffmpeg-cvslog mailing list