diff options
author | Even Rouault <even.rouault@spatialys.com> | 2021-09-29 09:32:34 +0000 |
---|---|---|
committer | Even Rouault <even.rouault@spatialys.com> | 2021-09-29 09:32:34 +0000 |
commit | 07b73cfd6f1941bf147abb33e31205bfd92bc3b6 (patch) | |
tree | 37d713134e3b7eef728647259eefad5f4992762b | |
parent | fc3e3a202d65e4b0f42a63c8001324b2a7fae88b (diff) | |
parent | 7fca729778afdbc18d21a389b7df8b0578e2cb99 (diff) | |
download | libtiff-git-07b73cfd6f1941bf147abb33e31205bfd92bc3b6.tar.gz |
Merge branch 'remove_packbits_hack' into 'master'
PackBitsDecode: remove hack for when char is unsigned.
See merge request libtiff/libtiff!267
-rw-r--r-- | libtiff/tif_packbits.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/libtiff/tif_packbits.c b/libtiff/tif_packbits.c index 76569ad7..b4568639 100644 --- a/libtiff/tif_packbits.c +++ b/libtiff/tif_packbits.c @@ -214,23 +214,17 @@ static int PackBitsDecode(TIFF* tif, uint8_t* op, tmsize_t occ, uint16_t s) { static const char module[] = "PackBitsDecode"; - char *bp; + int8_t *bp; tmsize_t cc; long n; int b; (void) s; - bp = (char*) tif->tif_rawcp; + bp = (int8_t*) tif->tif_rawcp; cc = tif->tif_rawcc; while (cc > 0 && occ > 0) { n = (long) *bp++; cc--; - /* - * Watch out for compilers that - * don't sign extend chars... - */ - if (n >= 128) - n -= 256; if (n < 0) { /* replicate next byte -n+1 times */ if (n == -128) /* nop */ continue; |