tools/tiffsplit.c:89: error: Integer Overflow L2
  ([0, +oo] - 1):unsigned32 by call to `tiffcp`.

tools/tiffsplit.c:89:9: Call
87. 			if (out == NULL)
88. 				return (-2);
89. 			if (!tiffcp(in, out))
            ^
90. 				return (-1);
91. 			TIFFClose(out);

tools/tiffsplit.c:157:1: Parameter `in->tif_dir.td_rowsperstrip`
  155. }
  156. 
  157. static int
       ^
  158. tiffcp(TIFF* in, TIFF* out)
  159. {

tools/tiffsplit.c:89:9: Call
87. 			if (out == NULL)
88. 				return (-2);
89. 			if (!tiffcp(in, out))
            ^
90. 				return (-1);
91. 			TIFFClose(out);

tools/tiffsplit.c:157:1: Parameter `in->tif_dir.td_rowsperstrip`
  155. }
  156. 
  157. static int
       ^
  158. tiffcp(TIFF* in, TIFF* out)
  159. {

tools/tiffsplit.c:227:11: Call
  225. 		return (cpTiles(in, out));
  226. 	else
  227. 		return (cpStrips(in, out));
                 ^
  228. }
  229. 

tools/tiffsplit.c:230:1: Parameter `in->tif_dir.td_rowsperstrip`
    228. }
    229. 
    230. static int
         ^
    231. cpStrips(TIFF* in, TIFF* out)
    232. {

tools/tiffsplit.c:237:20: Call
    235. 
    236. 	if (buf) {
    237. 		tstrip_t s, ns = TIFFNumberOfStrips(in);
                            ^
    238. 		uint64 *bytecounts;
    239. 

libtiff/tif_strip.c:86:1: <LHS trace>
84.  * Compute how many strips are in an image.
85.  */
86. uint32
    ^
87. TIFFNumberOfStrips(TIFF* tif)
88. {

libtiff/tif_strip.c:86:1: Parameter `tif->tif_dir.td_rowsperstrip`
      84.  * Compute how many strips are in an image.
      85.  */
      86. uint32
          ^
      87. TIFFNumberOfStrips(TIFF* tif)
      88. {

libtiff/tif_strip.c:92:13: Binary operation: ([0, +oo] - 1):unsigned32 by call to `tiffcp` 
      90. 	uint32 nstrips;
      91. 
      92. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
                      ^
      93. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
      94. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
