From e72574124f7470d8abd1fd221aab620593cad8b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20J=C3=A4genstedt?= Date: Fri, 13 Aug 2010 14:34:21 +0200 Subject: [PATCH] vp8dec: Set GstBaseVideoDecoder::packetized to TRUE as soon as possible This fixes an infinite loop if an EOS event is received before GstBaseVideoDecoder::start() is called, e.g. immediately when the pads are activated. Fixes bug #626815. --- ext/vp8/gstvp8dec.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ext/vp8/gstvp8dec.c b/ext/vp8/gstvp8dec.c index 1fc680d827..a655cbbded 100644 --- a/ext/vp8/gstvp8dec.c +++ b/ext/vp8/gstvp8dec.c @@ -188,7 +188,10 @@ gst_vp8_dec_class_init (GstVP8DecClass * klass) static void gst_vp8_dec_init (GstVP8Dec * gst_vp8_dec, GstVP8DecClass * klass) { + GstBaseVideoDecoder *decoder = (GstBaseVideoDecoder *) gst_vp8_dec; + GST_DEBUG_OBJECT (gst_vp8_dec, "gst_vp8_dec_init"); + decoder->packetized = TRUE; gst_vp8_dec->post_processing = DEFAULT_POST_PROCESSING; gst_vp8_dec->post_processing_flags = DEFAULT_POST_PROCESSING_FLAGS; gst_vp8_dec->deblocking_level = DEFAULT_DEBLOCKING_LEVEL; @@ -271,7 +274,6 @@ gst_vp8_dec_start (GstBaseVideoDecoder * decoder) GstVP8Dec *gst_vp8_dec = GST_VP8_DEC (decoder); GST_DEBUG_OBJECT (gst_vp8_dec, "start"); - decoder->packetized = TRUE; gst_vp8_dec->decoder_inited = FALSE; return TRUE;