From 3f9174473e6e2106f20318e377dcc80437b927f9 Mon Sep 17 00:00:00 2001 From: Laurent Aimar Date: Wed, 31 Mar 2010 00:46:05 +0200 Subject: [PATCH] Fixed non initialized date_t in some corner case with avcodec. --- modules/codec/avcodec/audio.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c index b2cb902733..0aaacee66d 100644 --- a/modules/codec/avcodec/audio.c +++ b/modules/codec/avcodec/audio.c @@ -217,15 +217,17 @@ int InitAudioDec( decoder_t *p_dec, AVCodecContext *p_context, p_sys->i_previous_channels = 0; p_sys->i_previous_layout = 0; - date_Set( &p_sys->end_date, 0 ); - if( p_dec->fmt_in.audio.i_rate ) - date_Init( &p_sys->end_date, p_dec->fmt_in.audio.i_rate, 1 ); - /* */ p_dec->fmt_out.i_cat = AUDIO_ES; /* Try to set as much informations as possible but do not trust it */ SetupOutputFormat( p_dec, false ); + date_Set( &p_sys->end_date, 0 ); + if( p_dec->fmt_out.audio.i_rate ) + date_Init( &p_sys->end_date, p_dec->fmt_out.audio.i_rate, 1 ); + else if( p_dec->fmt_in.audio.i_rate ) + date_Init( &p_sys->end_date, p_dec->fmt_in.audio.i_rate, 1 ); + return VLC_SUCCESS; } -- 2.39.2