int bit_index;
- int16_t curtileno;
+ int curtileno;
J2kTile *tile;
} J2kDecoderContext;
J2kTgtNode *stack[30];
int sp = -1, curval = 0;
+ if(!node)
+ return AVERROR(EINVAL);
+
while(node && !node->vis){
stack[++sp] = node;
node = node->parent;
switch(s->ncomponents){
case 1:
if (s->precision > 8) {
- s->avctx->pix_fmt = PIX_FMT_GRAY16;
+ s->avctx->pix_fmt = AV_PIX_FMT_GRAY16;
} else {
- s->avctx->pix_fmt = PIX_FMT_GRAY8;
+ s->avctx->pix_fmt = AV_PIX_FMT_GRAY8;
}
break;
case 3:
if (s->precision > 8) {
- s->avctx->pix_fmt = PIX_FMT_RGB48;
+ s->avctx->pix_fmt = AV_PIX_FMT_RGB48;
} else {
- s->avctx->pix_fmt = PIX_FMT_RGB24;
+ s->avctx->pix_fmt = AV_PIX_FMT_RGB24;
}
break;
case 4:
- s->avctx->pix_fmt = PIX_FMT_RGBA;
+ s->avctx->pix_fmt = AV_PIX_FMT_RGBA;
break;
}
int *ptr = t1.data[y-yy0];
for (x = xx0; x < xx1; x+=s->cdx[compno]){
int tmp = ((int64_t)*ptr++) * ((int64_t)band->stepsize) >> 13, tmp2;
- tmp2 = FFABS(tmp>>1) + FFABS(tmp&1);
+ tmp2 = FFABS(tmp>>1) + (tmp&1);
comp->data[(comp->coord[0][1] - comp->coord[0][0]) * y + x] = tmp < 0 ? -tmp2 : tmp2;
}
}