@ -1597,7 +1597,7 @@ static int decode_cblk(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *codsty,
cblk - > data + cblk - > length - 2 * ( term_cnt < cblk - > nb_terminations ) - t1 - > mqc . bp ) ;
}
return 0 ;
return 1 ;
}
/* TODO: Verify dequantization for lossless case
@ -1694,6 +1694,7 @@ static inline void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile
for ( compno = 0 ; compno < s - > ncomponents ; compno + + ) {
Jpeg2000Component * comp = tile - > comp + compno ;
Jpeg2000CodingStyle * codsty = tile - > codsty + compno ;
int coded = 0 ;
t1 . stride = ( 1 < < codsty - > log2_cblk_width ) + 2 ;
@ -1723,11 +1724,12 @@ static inline void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile
cblkno + + ) {
int x , y ;
Jpeg2000Cblk * cblk = prec - > cblk + cblkno ;
decode_cblk ( s , codsty , & t1 , cblk ,
int ret = decode_cblk ( s , codsty , & t1 , cblk ,
cblk - > coord [ 0 ] [ 1 ] - cblk - > coord [ 0 ] [ 0 ] ,
cblk - > coord [ 1 ] [ 1 ] - cblk - > coord [ 1 ] [ 0 ] ,
bandpos ) ;
if ( ret )
coded = 1 ;
x = cblk - > coord [ 0 ] [ 0 ] - band - > coord [ 0 ] [ 0 ] ;
y = cblk - > coord [ 1 ] [ 0 ] - band - > coord [ 1 ] [ 0 ] ;
@ -1743,7 +1745,9 @@ static inline void tile_codeblocks(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile
} /* end reslevel */
/* inverse DWT */
ff_dwt_decode ( & comp - > dwt , codsty - > transform = = FF_DWT97 ? ( void * ) comp - > f_data : ( void * ) comp - > i_data ) ;
if ( coded )
ff_dwt_decode ( & comp - > dwt , codsty - > transform = = FF_DWT97 ? ( void * ) comp - > f_data : ( void * ) comp - > i_data ) ;
} /*end comp */
}