Commit 735fedde authored by Christophe Massiot's avatar Christophe Massiot

More cleaning of the STATE_INVALID stuff (still not perfect though).

parent ea14ba77
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* libmpeg2.c: mpeg2 video decoder module making use of libmpeg2. * libmpeg2.c: mpeg2 video decoder module making use of libmpeg2.
***************************************************************************** *****************************************************************************
* Copyright (C) 1999-2001 VideoLAN * Copyright (C) 1999-2001 VideoLAN
* $Id: libmpeg2.c,v 1.15 2003/05/03 22:25:44 massiot Exp $ * $Id: libmpeg2.c,v 1.16 2003/05/04 01:36:20 massiot Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -342,18 +342,21 @@ static int RunDecoder( decoder_fifo_t *p_fifo ) ...@@ -342,18 +342,21 @@ static int RunDecoder( decoder_fifo_t *p_fifo )
buf[0] = buf[1] = buf[2] = NULL; buf[0] = buf[1] = buf[2] = NULL;
msg_Warn( p_dec->p_fifo, "invalid picture encountered" ); msg_Warn( p_dec->p_fifo, "invalid picture encountered" );
if ( (p_dec->p_info->current_picture->flags & PIC_MASK_CODING_TYPE)
!= B_CODING_TYPE )
{
vout_SynchroReset( p_dec->p_synchro ); vout_SynchroReset( p_dec->p_synchro );
}
mpeg2_skip( p_dec->p_mpeg2dec, 1 ); mpeg2_skip( p_dec->p_mpeg2dec, 1 );
mpeg2_set_buf( p_dec->p_mpeg2dec, buf, NULL );
if ( p_dec->p_info->current_fbuf != NULL ) if( p_dec->p_info->current_fbuf &&
p_dec->p_picture_to_destroy p_dec->p_info->current_fbuf->id )
= p_dec->p_info->current_fbuf->id;
if( p_dec->p_info->discard_fbuf &&
p_dec->p_info->discard_fbuf->id )
{ {
p_pic = (picture_t *)p_dec->p_info->discard_fbuf->id; p_pic = (picture_t *)p_dec->p_info->current_fbuf->id;
vout_UnlinkPicture( p_dec->p_vout, p_pic ); vout_UnlinkPicture( p_dec->p_vout, p_pic );
vout_DestroyPicture( p_dec->p_vout, p_pic );
} }
mpeg2_set_buf( p_dec->p_mpeg2dec, buf, NULL );
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment