OSDN Git Service

fix inifnite loop with http://sam.zoy.org/zzuf/lol-mplayer.mpg
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 26 Jan 2007 15:26:08 +0000 (15:26 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 26 Jan 2007 15:26:08 +0000 (15:26 +0000)
Originally committed as revision 7718 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/mpegvideo.c

index f23faed..2984b32 100644 (file)
@@ -1603,7 +1603,7 @@ alloc:
     if(s->last_picture_ptr) copy_picture(&s->last_picture, s->last_picture_ptr);
     if(s->next_picture_ptr) copy_picture(&s->next_picture, s->next_picture_ptr);
 
-    if(s->pict_type != I_TYPE && (s->last_picture_ptr==NULL || s->last_picture_ptr->data[0]==NULL)){
+    if(s->pict_type != I_TYPE && (s->last_picture_ptr==NULL || s->last_picture_ptr->data[0]==NULL) && !s->dropable){
         av_log(avctx, AV_LOG_ERROR, "warning: first frame is no keyframe\n");
         assert(s->pict_type != B_TYPE); //these should have been dropped if we don't have a reference
         goto alloc;