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

tools/tiffcrop.c:8859:1: Parameter `bps`
8857. 
8858. /* Mirror an image horizontally or vertically */
8859. static int
      ^
8860. mirrorImage(uint16 spp, uint16 bps, uint16 mirror, uint32 width, uint32 length, unsigned char *ibuff)
8861.   {

tools/tiffcrop.c:8870:3: Assignment
8868. 
8869.   src = ibuff;
8870.   rowsize = ((width * bps * spp) + 7) / 8;
        ^
8871.   switch (mirror)
8872.     {

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

libtiff/tif_unix.c:261:17: Assignment
  259. {
  260.         if (s == 0)
  261.                 return ((void *) NULL);
                       ^
  262. 
  263. 	return (malloc((size_t) s));

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

tools/tiffcrop.c:8937:33: Call
8935.                              _TIFFmemcpy (src, line_buff, rowsize);
8936.                              break;
8937.                     case 2: if (reverseSamples24bits(spp, bps, width, src, line_buff))
                                      ^
8938.                               {
8939. 		              _TIFFfree(line_buff);

tools/tiffcrop.c:8626:1: <Length trace>
8624.   } /* end reverseSamples16bits */
8625. 
8626. static int
      ^
8627. reverseSamples24bits (uint16 spp, uint16 bps, uint32 width, 
8628.                       uint8 *ibuff, uint8 *obuff)

tools/tiffcrop.c:8626:1: Parameter `*obuff`
  8624.   } /* end reverseSamples16bits */
  8625. 
  8626. static int
        ^
  8627. reverseSamples24bits (uint16 spp, uint16 bps, uint32 width, 
  8628.                       uint8 *ibuff, uint8 *obuff)

tools/tiffcrop.c:8649:3: Assignment
  8647.   ready_bits = 0;
  8648.   mask_bits =  (uint32)-1 >> (32 - bps);
  8649.   dst = obuff;
          ^
  8650.   for (col = width; col > 0; col--)
  8651.     {

tools/tiffcrop.c:8683:10: Assignment
  8681.         {
  8682.         bytebuff1 = (buff2 >> 24);
  8683.         *dst++ = bytebuff1;
                 ^
  8684.         bytebuff2 = (buff2 >> 16);
  8685.         *dst++ = bytebuff2;

tools/tiffcrop.c:8685:9: Array access: Offset: [1, +oo] Size: [0, +oo] by call to `reverseSamples24bits` 
  8683.         *dst++ = bytebuff1;
  8684.         bytebuff2 = (buff2 >> 16);
  8685.         *dst++ = bytebuff2;
                ^
  8686.         ready_bits -= 16;
  8687. 
