Set frame defaults in try_decode_frame.
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Mon, 13 Apr 2009 03:38:55 +0000 (03:38 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Mon, 13 Apr 2009 03:38:55 +0000 (03:38 +0000)
Fix:
==22211== Conditional jump or move depends on uninitialised value(s)
==22211==    at 0x811E692: ff_print_debug_info (mpegvideo.c:1137)
==22211==    by 0x82E6A7B: decode_frame (h264.c:7897)
==22211==    by 0x80F2823: avcodec_decode_video2 (utils.c:564)
[...]
==22211==  Uninitialised value was created by a stack allocation
==22211==    at 0x8064AA3: try_decode_frame (utils.c:1845)

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

libavformat/utils.c

index df45f9e..bdf168a 100644 (file)
@@ -1860,6 +1860,7 @@ static int try_decode_frame(AVStream *st, AVPacket *avpkt)
     if(!has_codec_parameters(st->codec)){
         switch(st->codec->codec_type) {
         case CODEC_TYPE_VIDEO:
+            avcodec_get_frame_defaults(&picture);
             ret = avcodec_decode_video2(st->codec, &picture,
                                         &got_picture, avpkt);
             break;