tools/tiffcrop.c:8753: error: Buffer Overrun L3
  Offset: [1, +oo] Size: [0, +oo] by call to `reverseSamples24bits`.

tools/tiffcrop.c:8675:1: Parameter `bps`
8673. 
8674. /* Mirror an image horizontally or vertically */
8675. static int
      ^
8676. mirrorImage(uint16 spp, uint16 bps, uint16 mirror, uint32 width, uint32 length, unsigned char *ibuff)
8677.   {

tools/tiffcrop.c:8686:3: Assignment
8684. 
8685.   src = ibuff;
8686.   rowsize = ((width * bps * spp) + 7) / 8;
        ^
8687.   switch (mirror)
8688.     {

tools/tiffcrop.c:8727:52: Call
8725. 	      else
8726.                 { /* non 8 bit per sample  data */
8727.                 if (!(line_buff = (unsigned char *)_TIFFmalloc(rowsize + 1)))
                                                         ^
8728.                   {
8729.                   TIFFError("mirrorImage", "Unable to allocate mirror line buffer");

libtiff/tif_unix.c:253:1: Parameter `s`
  251. #endif
  252. 
  253. void*
       ^
  254. _TIFFmalloc(tmsize_t s)
  255. {

libtiff/tif_unix.c:256:10: Array declaration
  254. _TIFFmalloc(tmsize_t s)
  255. {
  256. 	return (malloc((size_t) s));
                ^
  257. }
  258. 

libtiff/tif_unix.c:256:2: Assignment
  254. _TIFFmalloc(tmsize_t s)
  255. {
  256. 	return (malloc((size_t) s));
        ^
  257. }
  258. 

tools/tiffcrop.c:8727:23: Assignment
8725. 	      else
8726.                 { /* non 8 bit per sample  data */
8727.                 if (!(line_buff = (unsigned char *)_TIFFmalloc(rowsize + 1)))
                            ^
8728.                   {
8729.                   TIFFError("mirrorImage", "Unable to allocate mirror line buffer");

tools/tiffcrop.c:8753:33: Call
8751.                              _TIFFmemcpy (src, line_buff, rowsize);
8752.                              break;
8753.                     case 2: if (reverseSamples24bits(spp, bps, width, src, line_buff))
                                      ^
8754.                               {
8755. 		              _TIFFfree(line_buff);

tools/tiffcrop.c:8442:1: <Length trace>
8440.   } /* end reverseSamples16bits */
8441. 
8442. static int
      ^
8443. reverseSamples24bits (uint16 spp, uint16 bps, uint32 width, 
8444.                       uint8 *ibuff, uint8 *obuff)

tools/tiffcrop.c:8442:1: Parameter `*obuff`
  8440.   } /* end reverseSamples16bits */
  8441. 
  8442. static int
        ^
  8443. reverseSamples24bits (uint16 spp, uint16 bps, uint32 width, 
  8444.                       uint8 *ibuff, uint8 *obuff)

tools/tiffcrop.c:8465:3: Assignment
  8463.   ready_bits = 0;
  8464.   mask_bits =  (uint32)-1 >> (32 - bps);
  8465.   dst = obuff;
          ^
  8466.   for (col = width; col > 0; col--)
  8467.     {

tools/tiffcrop.c:8499:10: Assignment
  8497.         {
  8498.         bytebuff1 = (buff2 >> 24);
  8499.         *dst++ = bytebuff1;
                 ^
  8500.         bytebuff2 = (buff2 >> 16);
  8501.         *dst++ = bytebuff2;

tools/tiffcrop.c:8501:9: Array access: Offset: [1, +oo] Size: [0, +oo] by call to `reverseSamples24bits` 
  8499.         *dst++ = bytebuff1;
  8500.         bytebuff2 = (buff2 >> 16);
  8501.         *dst++ = bytebuff2;
                ^
  8502.         ready_bits -= 16;
  8503. 
