diff cyuv.c @ 1228:d63e0185a90f libavcodec

release buffer cleanup
author michaelni
date Tue, 06 May 2003 20:43:37 +0000
parents 1e39f273ecd6
children 8988af3ae1e8
line wrap: on
line diff
--- a/cyuv.c	Tue May 06 03:11:20 2003 +0000
+++ b/cyuv.c	Tue May 06 20:43:37 2003 +0000
@@ -98,6 +98,9 @@
     /* pixel data starts 48 bytes in, after 3x16-byte tables */
     stream_ptr = 48;
 
+    if(s->frame.data[0])
+        avctx->release_buffer(avctx, &s->frame);
+
     s->frame.reference = 0;
     if(avctx->get_buffer(avctx, &s->frame) < 0) {
         fprintf(stderr, "get_buffer() failed\n");
@@ -159,8 +162,6 @@
     *data_size=sizeof(AVFrame);
     *(AVFrame*)data= s->frame;
 
-    avctx->release_buffer(avctx, &s->frame);
-
     return buf_size;
 }