# HG changeset patch # User bcoudurier # Date 1185974303 0 # Node ID b4d41cc053b8758305ea2dc9e7fc3a43017f144d # Parent fff2e4b07e28c13270b4663d4167e2872716f52c use buf_ptr to correctly decode second field diff -r fff2e4b07e28 -r b4d41cc053b8 mjpegbdec.c --- a/mjpegbdec.c Wed Aug 01 01:13:58 2007 +0000 +++ b/mjpegbdec.c Wed Aug 01 13:18:23 2007 +0000 @@ -69,7 +69,7 @@ av_log(avctx, AV_LOG_DEBUG, "dqt offs: 0x%x\n", dqt_offs); if (dqt_offs) { - init_get_bits(&s->gb, buf+dqt_offs, (buf_end - (buf+dqt_offs))*8); + init_get_bits(&s->gb, buf_ptr+dqt_offs, (buf_end - (buf_ptr+dqt_offs))*8); s->start_code = DQT; ff_mjpeg_decode_dqt(s); } @@ -78,7 +78,7 @@ av_log(avctx, AV_LOG_DEBUG, "dht offs: 0x%x\n", dht_offs); if (dht_offs) { - init_get_bits(&s->gb, buf+dht_offs, (buf_end - (buf+dht_offs))*8); + init_get_bits(&s->gb, buf_ptr+dht_offs, (buf_end - (buf_ptr+dht_offs))*8); s->start_code = DHT; ff_mjpeg_decode_dht(s); } @@ -87,7 +87,7 @@ av_log(avctx, AV_LOG_DEBUG, "sof offs: 0x%x\n", sof_offs); if (sof_offs) { - init_get_bits(&s->gb, buf+sof_offs, (buf_end - (buf+sof_offs))*8); + init_get_bits(&s->gb, buf_ptr+sof_offs, (buf_end - (buf_ptr+sof_offs))*8); s->start_code = SOF0; if (ff_mjpeg_decode_sof(s) < 0) return -1; @@ -100,7 +100,7 @@ if (sos_offs) { // init_get_bits(&s->gb, buf+sos_offs, (buf_end - (buf+sos_offs))*8); - init_get_bits(&s->gb, buf+sos_offs, field_size*8); + init_get_bits(&s->gb, buf_ptr+sos_offs, field_size*8); s->mjpb_skiptosod = (sod_offs - sos_offs - show_bits(&s->gb, 16)); s->start_code = SOS; ff_mjpeg_decode_sos(s);