[vlc-devel] [PATCH 05/13] decoder: check missing picture dates early
Steve Lhomme
robux4 at ycbcr.xyz
Mon Sep 2 16:20:12 CEST 2019
Especially before we check this date against the i_preroll_end.
---
src/input/decoder.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/input/decoder.c b/src/input/decoder.c
index f0605f23c8..bddd35caba 100644
--- a/src/input/decoder.c
+++ b/src/input/decoder.c
@@ -979,6 +979,14 @@ static int DecoderPlayVideo_internal( struct decoder_owner *p_owner, picture_t *
vout_thread_t *p_vout = p_owner->p_vout;
bool prerolled;
+ if( p_picture->date == VLC_TICK_INVALID )
+ /* FIXME: VLC_TICK_INVALID -- verify video_output */
+ {
+ msg_Warn( p_dec, "non-dated video buffer received" );
+ picture_Release( p_picture );
+ return VLC_EGENERIC;
+ }
+
vlc_mutex_lock( &p_owner->lock );
if( p_owner->i_preroll_end > p_picture->date )
{
@@ -999,12 +1007,6 @@ static int DecoderPlayVideo_internal( struct decoder_owner *p_owner, picture_t *
vout_FlushAll( p_vout );
}
- if( p_picture->date == VLC_TICK_INVALID )
- {
- msg_Warn( p_dec, "non-dated video buffer received" );
- goto discard;
- }
-
/* */
vlc_mutex_lock( &p_owner->lock );
--
2.17.1
More information about the vlc-devel
mailing list