summaryrefslogtreecommitdiff
path: root/libavcodec/cavsdec.c
diff options
context:
space:
mode:
authorStefan Gehrer <stefan.gehrer@gmx.de>2009-02-10 17:08:56 +0000
committerStefan Gehrer <stefan.gehrer@gmx.de>2009-02-10 17:08:56 +0000
commit4ca6f4b29c23747a6ea9b3e6151f254d0fa2d0d9 (patch)
tree7fa6dbf3836c949bd3965ae9d337527ab8e42c88 /libavcodec/cavsdec.c
parente090c70f2f7e9c64696964517c2503e3ce7d274d (diff)
fix parsing of pic_structure
Originally committed as revision 17136 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/cavsdec.c')
-rw-r--r--libavcodec/cavsdec.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libavcodec/cavsdec.c b/libavcodec/cavsdec.c
index b4d3e978ad..9e49589156 100644
--- a/libavcodec/cavsdec.c
+++ b/libavcodec/cavsdec.c
@@ -499,9 +499,10 @@ static int decode_pic(AVSContext *h) {
if(s->low_delay)
get_ue_golomb(&s->gb); //bbv_check_times
h->progressive = get_bits1(&s->gb);
- if(h->progressive)
- h->pic_structure = 1;
- else if(!(h->pic_structure = get_bits1(&s->gb) && (h->stc == PIC_PB_START_CODE)) )
+ h->pic_structure = 1;
+ if(!h->progressive)
+ h->pic_structure = get_bits1(&s->gb);
+ if(!h->pic_structure && h->stc == PIC_PB_START_CODE)
skip_bits1(&s->gb); //advanced_pred_mode_disable
skip_bits1(&s->gb); //top_field_first
skip_bits1(&s->gb); //repeat_first_field