fixed a bug in j2k.c (j2k_write_sod) that allowed to get negative rates, thanks zhong1985624 for pointing this.

This commit is contained in:
Antonin Descampe 2008-05-22 16:39:40 +00:00
parent f4d394d932
commit 295ad6b112
2 changed files with 8 additions and 1 deletions

View File

@ -5,6 +5,9 @@ What's New for OpenJPEG
! : changed ! : changed
+ : added + : added
May 22, 2008
* [antonin] fixed a bug in j2k.c (j2k_write_sod) that allowed to get negative rates, thanks zhong1985624 for pointing this.
May 22, 2008 May 22, 2008
* [antonin] additional test to avoid crash due to invalid image size, patch by Christopher Layne * [antonin] additional test to avoid crash due to invalid image size, patch by Christopher Layne

View File

@ -1438,7 +1438,11 @@ static void j2k_write_sod(opj_j2k_t *j2k, void *tile_coder) {
tcp = &cp->tcps[j2k->curtileno]; tcp = &cp->tcps[j2k->curtileno];
for (layno = 0; layno < tcp->numlayers; layno++) { for (layno = 0; layno < tcp->numlayers; layno++) {
tcp->rates[layno] -= tcp->rates[layno] ? (j2k->sod_start / (cp->th * cp->tw)) : 0; if (tcp->rates[layno]>(j2k->sod_start / (cp->th * cp->tw))) {
tcp->rates[layno]-=(j2k->sod_start / (cp->th * cp->tw));
} else if (tcp->rates[layno]) {
tcp->rates[layno]=1;
}
} }
if(j2k->cur_tp_num == 0){ if(j2k->cur_tp_num == 0){
tcd->tcd_image->tiles->packno = 0; tcd->tcd_image->tiles->packno = 0;