summaryrefslogtreecommitdiffstats
path: root/libmpeg2
diff options
context:
space:
mode:
Diffstat (limited to 'libmpeg2')
-rw-r--r--libmpeg2/slice.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libmpeg2/slice.c b/libmpeg2/slice.c
index 1d85cc5cdc..a1a2bcb7fa 100644
--- a/libmpeg2/slice.c
+++ b/libmpeg2/slice.c
@@ -976,7 +976,8 @@ static inline int get_macroblock_address_increment (picture_t * picture)
break;
default: /* end of slice, or error */
// printf("MB error: %d \n",(UBITS (bit_buf, 11))); // FIXME!
- return 0;
+// return 0;
+ return -1;
}
}
@@ -1755,13 +1756,15 @@ int slice_process (picture_t * picture, uint8_t code, uint8_t * buffer)
NEEDBITS (bit_buf, bits, bit_ptr);
- if (bit_buf & 0x80000000) {
+ if (0 /* FIXME */ && (bit_buf & 0x80000000)) {
DUMPBITS (bit_buf, bits, 1);
} else {
int mba_inc;
mba_inc = get_macroblock_address_increment (picture);
if (!mba_inc)
+ continue;
+ else if (mba_inc < 0)
break;
picture->dc_dct_pred[0] = picture->dc_dct_pred[1] =