diff options
| author | Antonin Descampe <antonin@gmail.com> | 2016-05-04 00:27:22 +0200 |
|---|---|---|
| committer | Antonin Descampe <antonin@gmail.com> | 2016-05-04 00:27:22 +0200 |
| commit | 51a51bdd031fc11fd0c9d29a9dfdecc9c3fe8b52 (patch) | |
| tree | 416fa26e2bd814b930e125b79cc1ebae05c85513 /src | |
| parent | 94cfb1b008319e8b0b17e741f1e29e0a7b90af38 (diff) | |
update #612 #770 #674
RESTART mode is now working, BYPASS still broken but much better
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/openjp2/t1.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/openjp2/t1.c b/src/lib/openjp2/t1.c index 1bf7205e..8eb42a43 100644 --- a/src/lib/openjp2/t1.c +++ b/src/lib/openjp2/t1.c @@ -1662,7 +1662,7 @@ static void opj_t1_encode_cblk(opj_t1_t *t1, bpno--; } - if (pass->term && bpno > 0) { + if (pass->term) { type = ((bpno < ((OPJ_INT32) (cblk->numbps) - 4)) && (passtype < 2) && (cblksty & J2K_CCP_CBLKSTY_LAZY)) ? T1_TYPE_RAW : T1_TYPE_MQ; if (type == T1_TYPE_RAW) opj_mqc_bypass_init_enc(mqc); @@ -1691,7 +1691,7 @@ static void opj_t1_encode_cblk(opj_t1_t *t1, if (pass->rate > opj_mqc_numbytes(mqc)) pass->rate = opj_mqc_numbytes(mqc); /*Preventing generation of FF as last data byte of a pass*/ - if((pass->rate>1) && (cblk->data[pass->rate - 1] == 0xFF)){ + if(!(cblksty & J2K_CCP_CBLKSTY_LAZY) && (pass->rate>1) && (cblk->data[pass->rate - 1] == 0xFF)){ pass->rate--; } pass->len = pass->rate - (passno == 0 ? 0 : cblk->passes[passno - 1].rate); |
