From: David Flynn <dav...@woaf.net> Also removed the have_sequence_header flag, since it is identical to sequence_header_buffer != NULL;
Signed-off-by: David Flynn <dav...@rd.bbc.co.uk> --- schroedinger/schrodecoder.c | 13 ++++++++----- schroedinger/schrodecoder.h | 1 - 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/schroedinger/schrodecoder.c b/schroedinger/schrodecoder.c index df9b831..134d704 100644 --- a/schroedinger/schrodecoder.c +++ b/schroedinger/schrodecoder.c @@ -324,7 +324,11 @@ schro_decoder_reset (SchroDecoder *decoder) schro_queue_clear (decoder->reference_queue); schro_queue_clear (decoder->output_queue); - decoder->have_sequence_header = FALSE; + if (decoder->sequence_header_buffer) { + schro_buffer_unref (decoder->sequence_header_buffer); + } + decoder->sequence_header_buffer = NULL; + decoder->next_frame_number = 0; decoder->have_frame_number = FALSE; @@ -586,7 +590,7 @@ schro_decoder_get_status_locked (SchroDecoder *decoder) if (decoder->error) { return SCHRO_DECODER_ERROR; } - if (decoder->have_sequence_header && + if (decoder->sequence_header_buffer && schro_queue_is_empty (decoder->output_queue)) { return SCHRO_DECODER_NEED_FRAME; } @@ -707,9 +711,8 @@ schro_decoder_push (SchroDecoder *decoder, SchroBuffer *buffer) int ret; SCHRO_INFO ("decoding access unit"); - if (!decoder->have_sequence_header) { + if (!decoder->sequence_header_buffer) { schro_decoder_parse_sequence_header(decoder); - decoder->have_sequence_header = TRUE; decoder->sequence_header_buffer = schro_buffer_dup (buffer); ret = SCHRO_DECODER_FIRST_ACCESS_UNIT; @@ -759,7 +762,7 @@ schro_decoder_push (SchroDecoder *decoder, SchroBuffer *buffer) if (SCHRO_PARSE_CODE_IS_PICTURE(decoder->parse_code)) { - if (!decoder->have_sequence_header) { + if (!decoder->sequence_header_buffer) { SCHRO_INFO ("no access unit -- dropping picture"); schro_buffer_unref (buffer); return SCHRO_DECODER_OK; diff --git a/schroedinger/schrodecoder.h b/schroedinger/schrodecoder.h index 5af0e01..c37de5e 100644 --- a/schroedinger/schrodecoder.h +++ b/schroedinger/schrodecoder.h @@ -66,7 +66,6 @@ struct _SchroDecoder { int next_parse_offset; int prev_parse_offset; - int have_sequence_header; SchroBuffer *sequence_header_buffer; int have_frame_number; -- 1.5.6.5 ------------------------------------------------------------------------------ This SF.net email is sponsored by: SourcForge Community SourceForge wants to tell your story. http://p.sf.net/sfu/sf-spreadtheword _______________________________________________ Schrodinger-devel mailing list Schrodinger-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/schrodinger-devel