summaryrefslogtreecommitdiff
path: root/libavcodec/shorten.c
diff options
context:
space:
mode:
authorJustin Ruggles <justin.ruggles@gmail.com>2011-09-16 20:54:11 -0400
committerJustin Ruggles <justin.ruggles@gmail.com>2011-10-20 13:09:46 -0400
commitd03f9f65c090e29cfae5658e0a2e450b0e780346 (patch)
treeb0a7bac82b280ec2ee05ddbce2b8125872bdd37a /libavcodec/shorten.c
parent882dafe9b666a7333d1b256fafe63e35dc582e3f (diff)
shorten: do not use block size to determine whether to read the header.
Diffstat (limited to 'libavcodec/shorten.c')
-rw-r--r--libavcodec/shorten.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/shorten.c b/libavcodec/shorten.c
index 803175827d..2732aabd5d 100644
--- a/libavcodec/shorten.c
+++ b/libavcodec/shorten.c
@@ -102,6 +102,7 @@ typedef struct ShortenContext {
int blocksize;
int bitindex;
int32_t lpcqoffset;
+ int got_header;
} ShortenContext;
static av_cold int shorten_decode_init(AVCodecContext * avctx)
@@ -386,6 +387,8 @@ static int read_header(ShortenContext *s)
s->cur_chan = 0;
s->bitshift = 0;
+ s->got_header = 1;
+
return 0;
}
@@ -438,8 +441,7 @@ static int shorten_decode_frame(AVCodecContext *avctx,
skip_bits(&s->gb, s->bitindex);
/* process header or next subblock */
- if (!s->blocksize)
- {
+ if (!s->got_header) {
if ((ret = read_header(s)) < 0)
return ret;
*data_size = 0;