comparison ffv1.c @ 3103:cfc5b4a05633 libavcodec

fix segfault on broken streams
author michael
date Thu, 09 Feb 2006 09:38:03 +0000
parents 0b546eab515d
children 6baa0bfee0b8
comparison
equal deleted inserted replaced
3102:fcc2892eeab3 3103:cfc5b4a05633
957 957
958 958
959 p->pict_type= FF_I_TYPE; //FIXME I vs. P 959 p->pict_type= FF_I_TYPE; //FIXME I vs. P
960 if(get_rac(c, &keystate)){ 960 if(get_rac(c, &keystate)){
961 p->key_frame= 1; 961 p->key_frame= 1;
962 read_header(f); 962 if(read_header(f) < 0)
963 return -1;
963 clear_state(f); 964 clear_state(f);
964 }else{ 965 }else{
965 p->key_frame= 0; 966 p->key_frame= 0;
966 } 967 }
968 if(!f->plane[0].state && !f->plane[0].vlc_state)
969 return -1;
967 970
968 p->reference= 0; 971 p->reference= 0;
969 if(avctx->get_buffer(avctx, p) < 0){ 972 if(avctx->get_buffer(avctx, p) < 0){
970 av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n"); 973 av_log(avctx, AV_LOG_ERROR, "get_buffer() failed\n");
971 return -1; 974 return -1;