tools/tiffcp.c:1066: error: Memory Leak
  memory dynamically allocated by call to `_TIFFmalloc()` at line 1064, column 10 is not reachable after line 1066, column 17.

tools/tiffcp.c:1053:1: start of procedure cpContig2SeparateByRow()
1051.  * Contig -> separate by row.
1052.  */
1053. DECLAREcpFunc(cpContig2SeparateByRow)
      ^
1054. {
1055. 	tsize_t scanlinesizein = TIFFScanlineSize(in);

tools/tiffcp.c:1055:2: 
1053. DECLAREcpFunc(cpContig2SeparateByRow)
1054. {
1055. 	tsize_t scanlinesizein = TIFFScanlineSize(in);
       ^
1056. 	tsize_t scanlinesizeout = TIFFScanlineSize(out);
1057. 	tdata_t inbuf;

libtiff/tif_strip.c:323:1: start of procedure TIFFScanlineSize()
  321. 	return(scanline_size);
  322. }
  323. tmsize_t
       ^
  324. TIFFScanlineSize(TIFF* tif)
  325. {

libtiff/tif_strip.c:326:2: 
  324. TIFFScanlineSize(TIFF* tif)
  325. {
  326. 	static const char module[] = "TIFFScanlineSize";
        ^
  327. 	uint64 m;
  328. 	tmsize_t n;

libtiff/tif_strip.c:329:2: Skipping TIFFScanlineSize64(): empty list of specs
  327. 	uint64 m;
  328. 	tmsize_t n;
  329. 	m=TIFFScanlineSize64(tif);
        ^
  330. 	n=(tmsize_t)m;
  331. 	if ((uint64)n!=m)

libtiff/tif_strip.c:330:2: 
  328. 	tmsize_t n;
  329. 	m=TIFFScanlineSize64(tif);
  330. 	n=(tmsize_t)m;
        ^
  331. 	if ((uint64)n!=m)
  332. 	{

libtiff/tif_strip.c:331:6: Taking false branch
  329. 	m=TIFFScanlineSize64(tif);
  330. 	n=(tmsize_t)m;
  331. 	if ((uint64)n!=m)
            ^
  332. 	{
  333. 		TIFFErrorExt(tif->tif_clientdata,module,"Integer arithmetic overflow");

libtiff/tif_strip.c:336:2: 
  334. 		n=0;
  335. 	}
  336. 	return(n);
        ^
  337. }
  338. 

libtiff/tif_strip.c:337:1: return from a call to TIFFScanlineSize
  335. 	}
  336. 	return(n);
  337. }
       ^
  338. 
  339. /*

tools/tiffcp.c:1056:2: 
1054. {
1055. 	tsize_t scanlinesizein = TIFFScanlineSize(in);
1056. 	tsize_t scanlinesizeout = TIFFScanlineSize(out);
       ^
1057. 	tdata_t inbuf;
1058. 	tdata_t outbuf;

libtiff/tif_strip.c:323:1: start of procedure TIFFScanlineSize()
  321. 	return(scanline_size);
  322. }
  323. tmsize_t
       ^
  324. TIFFScanlineSize(TIFF* tif)
  325. {

libtiff/tif_strip.c:326:2: 
  324. TIFFScanlineSize(TIFF* tif)
  325. {
  326. 	static const char module[] = "TIFFScanlineSize";
        ^
  327. 	uint64 m;
  328. 	tmsize_t n;

libtiff/tif_strip.c:329:2: Skipping TIFFScanlineSize64(): empty list of specs
  327. 	uint64 m;
  328. 	tmsize_t n;
  329. 	m=TIFFScanlineSize64(tif);
        ^
  330. 	n=(tmsize_t)m;
  331. 	if ((uint64)n!=m)

libtiff/tif_strip.c:330:2: 
  328. 	tmsize_t n;
  329. 	m=TIFFScanlineSize64(tif);
  330. 	n=(tmsize_t)m;
        ^
  331. 	if ((uint64)n!=m)
  332. 	{

libtiff/tif_strip.c:331:6: Taking false branch
  329. 	m=TIFFScanlineSize64(tif);
  330. 	n=(tmsize_t)m;
  331. 	if ((uint64)n!=m)
            ^
  332. 	{
  333. 		TIFFErrorExt(tif->tif_clientdata,module,"Integer arithmetic overflow");

libtiff/tif_strip.c:336:2: 
  334. 		n=0;
  335. 	}
  336. 	return(n);
        ^
  337. }
  338. 

libtiff/tif_strip.c:337:1: return from a call to TIFFScanlineSize
  335. 	}
  336. 	return(n);
  337. }
       ^
  338. 
  339. /*

tools/tiffcp.c:1064:2: 
1062. 	tsample_t s;
1063. 
1064. 	inbuf = _TIFFmalloc(scanlinesizein);
       ^
1065. 	outbuf = _TIFFmalloc(scanlinesizeout);
1066. 	if (!inbuf || !outbuf)

libtiff/tif_unix.c:257:1: start of procedure _TIFFmalloc()
  255. #endif
  256. 
  257. void*
       ^
  258. _TIFFmalloc(tmsize_t s)
  259. {

libtiff/tif_unix.c:260:13: Taking false branch
  258. _TIFFmalloc(tmsize_t s)
  259. {
  260.         if (s == 0)
                   ^
  261.                 return ((void *) NULL);
  262. 

libtiff/tif_unix.c:263:2: 
  261.                 return ((void *) NULL);
  262. 
  263. 	return (malloc((size_t) s));
        ^
  264. }
  265. 

libtiff/tif_unix.c:264:1: return from a call to _TIFFmalloc
  262. 
  263. 	return (malloc((size_t) s));
  264. }
       ^
  265. 
  266. void

tools/tiffcp.c:1065:2: 
1063. 
1064. 	inbuf = _TIFFmalloc(scanlinesizein);
1065. 	outbuf = _TIFFmalloc(scanlinesizeout);
       ^
1066. 	if (!inbuf || !outbuf)
1067. 		return 0;

libtiff/tif_unix.c:257:1: start of procedure _TIFFmalloc()
  255. #endif
  256. 
  257. void*
       ^
  258. _TIFFmalloc(tmsize_t s)
  259. {

libtiff/tif_unix.c:260:13: Taking false branch
  258. _TIFFmalloc(tmsize_t s)
  259. {
  260.         if (s == 0)
                   ^
  261.                 return ((void *) NULL);
  262. 

libtiff/tif_unix.c:263:2: 
  261.                 return ((void *) NULL);
  262. 
  263. 	return (malloc((size_t) s));
        ^
  264. }
  265. 

libtiff/tif_unix.c:264:1: return from a call to _TIFFmalloc
  262. 
  263. 	return (malloc((size_t) s));
  264. }
       ^
  265. 
  266. void

tools/tiffcp.c:1066:7: Taking false branch
1064. 	inbuf = _TIFFmalloc(scanlinesizein);
1065. 	outbuf = _TIFFmalloc(scanlinesizeout);
1066. 	if (!inbuf || !outbuf)
            ^
1067. 		return 0;
1068. 	_TIFFmemset(inbuf, 0, scanlinesizein);

tools/tiffcp.c:1066:17: Taking true branch
1064. 	inbuf = _TIFFmalloc(scanlinesizein);
1065. 	outbuf = _TIFFmalloc(scanlinesizeout);
1066. 	if (!inbuf || !outbuf)
                      ^
1067. 		return 0;
1068. 	_TIFFmemset(inbuf, 0, scanlinesizein);
