Check return value of ff_fill_pointer in avcodec_default_get_buffer,
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 23 Feb 2009 15:18:28 +0000 (15:18 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 23 Feb 2009 15:18:28 +0000 (15:18 +0000)
if it returns -1 we do not know how to allocate an AVFrame for that format
and must return -1 instead of returning nonsense.

Originally committed as revision 17542 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/utils.c

index 2ae5ce4..f9b9a30 100644 (file)
@@ -271,6 +271,8 @@ int avcodec_default_get_buffer(AVCodecContext *s, AVFrame *pic){
         }
 
         tmpsize = ff_fill_pointer(&picture, NULL, s->pix_fmt, h);
+        if (tmpsize < 0)
+            return -1;
 
         for (i=0; i<3 && picture.data[i+1]; i++)
             size[i] = picture.data[i+1] - picture.data[i];