tools/tiff2pdf.c:1988: error: Null Dereference
  pointer `sbc` last assigned on line 1946 could be null and is dereferenced at line 1988, column 23.

tools/tiff2pdf.c:1944:1: start of procedure t2p_read_tiff_size()
1942. */
1943. 
1944. void t2p_read_tiff_size(T2P* t2p, TIFF* input){
      ^
1945. 
1946. 	uint64* sbc=NULL;

tools/tiff2pdf.c:1946:2: 
1944. void t2p_read_tiff_size(T2P* t2p, TIFF* input){
1945. 
1946. 	uint64* sbc=NULL;
       ^
1947. #if defined(JPEG_SUPPORT) || defined (OJPEG_SUPPORT)
1948. 	unsigned char* jpt=NULL;

tools/tiff2pdf.c:1948:2: 
1946. 	uint64* sbc=NULL;
1947. #if defined(JPEG_SUPPORT) || defined (OJPEG_SUPPORT)
1948. 	unsigned char* jpt=NULL;
       ^
1949. 	tstrip_t i=0;
1950. 	tstrip_t stripcount=0;

tools/tiff2pdf.c:1949:2: 
1947. #if defined(JPEG_SUPPORT) || defined (OJPEG_SUPPORT)
1948. 	unsigned char* jpt=NULL;
1949. 	tstrip_t i=0;
       ^
1950. 	tstrip_t stripcount=0;
1951. #endif

tools/tiff2pdf.c:1950:2: 
1948. 	unsigned char* jpt=NULL;
1949. 	tstrip_t i=0;
1950. 	tstrip_t stripcount=0;
       ^
1951. #endif
1952.         uint64 k = 0;

tools/tiff2pdf.c:1952:9: 
1950. 	tstrip_t stripcount=0;
1951. #endif
1952.         uint64 k = 0;
              ^
1953. 
1954. 	if(t2p->pdf_transcode == T2P_TRANSCODE_RAW){

tools/tiff2pdf.c:1954:5: Taking true branch
1952.         uint64 k = 0;
1953. 
1954. 	if(t2p->pdf_transcode == T2P_TRANSCODE_RAW){
          ^
1955. #ifdef CCITT_SUPPORT
1956. 		if(t2p->pdf_compression == T2P_COMPRESS_G4 ){

tools/tiff2pdf.c:1956:6: Taking false branch
1954. 	if(t2p->pdf_transcode == T2P_TRANSCODE_RAW){
1955. #ifdef CCITT_SUPPORT
1956. 		if(t2p->pdf_compression == T2P_COMPRESS_G4 ){
           ^
1957. 			TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc);
1958.             if (sbc[0] != (uint64)(tmsize_t)sbc[0]) {

tools/tiff2pdf.c:1967:6: Taking false branch
1965. #endif
1966. #ifdef ZIP_SUPPORT
1967. 		if(t2p->pdf_compression == T2P_COMPRESS_ZIP){
           ^
1968. 			TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc);
1969.             if (sbc[0] != (uint64)(tmsize_t)sbc[0]) {

tools/tiff2pdf.c:1978:6: Taking true branch
1976. #endif
1977. #ifdef OJPEG_SUPPORT
1978. 		if(t2p->tiff_compression == COMPRESSION_OJPEG){
           ^
1979. 			if(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){
1980. 				TIFFError(TIFF2PDF_MODULE, 

tools/tiff2pdf.c:1979:8: 
1977. #ifdef OJPEG_SUPPORT
1978. 		if(t2p->tiff_compression == COMPRESSION_OJPEG){
1979. 			if(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){
             ^
1980. 				TIFFError(TIFF2PDF_MODULE, 
1981. 					"Input file %s missing field: TIFFTAG_STRIPBYTECOUNTS",

libtiff/tif_dir.c:1230:1: start of procedure TIFFGetField()
  1228.  * internal directory structure.
  1229.  */
  1230. int
        ^
  1231. TIFFGetField(TIFF* tif, uint32 tag, ...)
  1232. {

libtiff/tif_dir.c:1236:2: 
  1234. 	va_list ap;
  1235. 
  1236. 	va_start(ap, tag);
         ^
  1237. 	status = TIFFVGetField(tif, tag, ap);
  1238. 	va_end(ap);

libtiff/tif_dir.c:1237:2: Skipping TIFFVGetField(): empty list of specs
  1235. 
  1236. 	va_start(ap, tag);
  1237. 	status = TIFFVGetField(tif, tag, ap);
         ^
  1238. 	va_end(ap);
  1239. 	return (status);

libtiff/tif_dir.c:1238:2: 
  1236. 	va_start(ap, tag);
  1237. 	status = TIFFVGetField(tif, tag, ap);
  1238. 	va_end(ap);
         ^
  1239. 	return (status);
  1240. }

libtiff/tif_dir.c:1239:2: 
  1237. 	status = TIFFVGetField(tif, tag, ap);
  1238. 	va_end(ap);
  1239. 	return (status);
         ^
  1240. }
  1241. 

libtiff/tif_dir.c:1240:1: return from a call to TIFFGetField
  1238. 	va_end(ap);
  1239. 	return (status);
  1240. }
        ^
  1241. 
  1242. /*

tools/tiff2pdf.c:1979:8: Taking false branch
1977. #ifdef OJPEG_SUPPORT
1978. 		if(t2p->tiff_compression == COMPRESSION_OJPEG){
1979. 			if(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){
             ^
1980. 				TIFFError(TIFF2PDF_MODULE, 
1981. 					"Input file %s missing field: TIFFTAG_STRIPBYTECOUNTS",

tools/tiff2pdf.c:1986:4: 
1984. 				return;
1985. 			}
1986. 			stripcount=TIFFNumberOfStrips(input);
         ^
1987. 			for(i=0;i<stripcount;i++){
1988. 				k = checkAdd64(k, sbc[i], t2p);

libtiff/tif_strip.c:58:1: start of procedure TIFFNumberOfStrips()
  56.  * Compute how many strips are in an image.
  57.  */
  58. uint32
      ^
  59. TIFFNumberOfStrips(TIFF* tif)
  60. {

libtiff/tif_strip.c:61:2: 
  59. TIFFNumberOfStrips(TIFF* tif)
  60. {
  61. 	TIFFDirectory *td = &tif->tif_dir;
       ^
  62. 	uint32 nstrips;
  63. 

libtiff/tif_strip.c:64:13: Condition is false
  62. 	uint32 nstrips;
  63. 
  64. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
                  ^
  65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
  66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)

libtiff/tif_strip.c:65:7: Condition is true
  63. 
  64. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
  65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
            ^
  66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
  67. 		nstrips = _TIFFMultiply32(tif, nstrips, (uint32)td->td_samplesperpixel,

libtiff/tif_strip.c:64:13: 
  62. 	uint32 nstrips;
  63. 
  64. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
                  ^
  65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
  66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)

libtiff/tif_strip.c:64:2: 
  62. 	uint32 nstrips;
  63. 
  64. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
       ^
  65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
  66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)

libtiff/tif_strip.c:66:6: Taking true branch
  64. 	nstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :
  65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
  66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
           ^
  67. 		nstrips = _TIFFMultiply32(tif, nstrips, (uint32)td->td_samplesperpixel,
  68. 		    "TIFFNumberOfStrips");

libtiff/tif_strip.c:67:3: 
  65. 	     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));
  66. 	if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
  67. 		nstrips = _TIFFMultiply32(tif, nstrips, (uint32)td->td_samplesperpixel,
        ^
  68. 		    "TIFFNumberOfStrips");
  69. 	return (nstrips);

libtiff/tif_aux.c:35:1: start of procedure _TIFFMultiply32()
    33. #include <float.h>
    34. 
    35. uint32
        ^
    36. _TIFFMultiply32(TIFF* tif, uint32 first, uint32 second, const char* where)
    37. {

libtiff/tif_aux.c:38:6: Taking true branch
    36. _TIFFMultiply32(TIFF* tif, uint32 first, uint32 second, const char* where)
    37. {
    38. 	if (second && first > TIFF_UINT32_MAX / second) {
             ^
    39. 		TIFFErrorExt(tif->tif_clientdata, where, "Integer overflow in %s", where);
    40. 		return 0;

libtiff/tif_aux.c:38:16: Taking false branch
    36. _TIFFMultiply32(TIFF* tif, uint32 first, uint32 second, const char* where)
    37. {
    38. 	if (second && first > TIFF_UINT32_MAX / second) {
                       ^
    39. 		TIFFErrorExt(tif->tif_clientdata, where, "Integer overflow in %s", where);
    40. 		return 0;

libtiff/tif_aux.c:43:2: 
    41. 	}
    42. 
    43. 	return first * second;
         ^
    44. }
    45. 

libtiff/tif_aux.c:44:1: return from a call to _TIFFMultiply32
    42. 
    43. 	return first * second;
    44. }
        ^
    45. 
    46. uint64

libtiff/tif_strip.c:69:2: 
  67. 		nstrips = _TIFFMultiply32(tif, nstrips, (uint32)td->td_samplesperpixel,
  68. 		    "TIFFNumberOfStrips");
  69. 	return (nstrips);
       ^
  70. }
  71. 

libtiff/tif_strip.c:70:1: return from a call to TIFFNumberOfStrips
  68. 		    "TIFFNumberOfStrips");
  69. 	return (nstrips);
  70. }
      ^
  71. 
  72. /*

tools/tiff2pdf.c:1987:8: 
1985. 			}
1986. 			stripcount=TIFFNumberOfStrips(input);
1987. 			for(i=0;i<stripcount;i++){
             ^
1988. 				k = checkAdd64(k, sbc[i], t2p);
1989. 			}

tools/tiff2pdf.c:1987:12: Loop condition is true. Entering loop body
1985. 			}
1986. 			stripcount=TIFFNumberOfStrips(input);
1987. 			for(i=0;i<stripcount;i++){
                 ^
1988. 				k = checkAdd64(k, sbc[i], t2p);
1989. 			}

tools/tiff2pdf.c:1988:5: 
1986. 			stripcount=TIFFNumberOfStrips(input);
1987. 			for(i=0;i<stripcount;i++){
1988. 				k = checkAdd64(k, sbc[i], t2p);
          ^
1989. 			}
1990. 			if(TIFFGetField(input, TIFFTAG_JPEGIFOFFSET, &(t2p->tiff_dataoffset))){

void t2p_read_tiff_size(T2P* t2p, TIFF* input){
	uint64* sbc=NULL;
#if defined(JPEG_SUPPORT) || defined (OJPEG_SUPPORT)
	unsigned char* jpt=NULL;
	tstrip_t i=0;
	tstrip_t stripcount=0;
#endif
        uint64 k = 0;
	if(t2p->pdf_transcode == T2P_TRANSCODE_RAW){
#ifdef CCITT_SUPPORT
		if(t2p->pdf_compression == T2P_COMPRESS_G4 ){
			TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc);
            if (sbc[0] != (uint64)(tmsize_t)sbc[0]) {
                TIFFError(TIFF2PDF_MODULE, "Integer overflow");
                t2p->t2p_error = T2P_ERR_ERROR;
            }
			t2p->tiff_datasize=(tmsize_t)sbc[0];
			return;
		}
#endif
#ifdef ZIP_SUPPORT
		if(t2p->pdf_compression == T2P_COMPRESS_ZIP){
			TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc);
            if (sbc[0] != (uint64)(tmsize_t)sbc[0]) {
                TIFFError(TIFF2PDF_MODULE, "Integer overflow");
                t2p->t2p_error = T2P_ERR_ERROR;
            }
			t2p->tiff_datasize=(tmsize_t)sbc[0];
			return;
		}
#endif
#ifdef OJPEG_SUPPORT
		if(t2p->tiff_compression == COMPRESSION_OJPEG){
			if(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){
				TIFFError(TIFF2PDF_MODULE,
					"Input file %s missing field: TIFFTAG_STRIPBYTECOUNTS",
					TIFFFileName(input));
				t2p->t2p_error = T2P_ERR_ERROR;
				return;
			}
			stripcount=TIFFNumberOfStrips(input);
			for(i=0;i<stripcount;i++){
				k = checkAdd64(k, sbc[i], t2p);
			}
			if(TIFFGetField(input, TIFFTAG_JPEGIFOFFSET, &(t2p->tiff_dataoffset))){
				if(t2p->tiff_dataoffset != 0){
					if(TIFFGetField(input, TIFFTAG_JPEGIFBYTECOUNT, &(t2p->tiff_datasize))!=0){
						if((uint64)t2p->tiff_datasize < k) {
							TIFFWarning(TIFF2PDF_MODULE,
								"Input file %s has short JPEG interchange file byte count",
								TIFFFileName(input));
							t2p->pdf_ojpegiflength=t2p->tiff_datasize;
							k = checkAdd64(k, t2p->tiff_datasize, t2p);
							k = checkAdd64(k, 6, t2p);
							k = checkAdd64(k, stripcount, t2p);
							k = checkAdd64(k, stripcount, t2p);
							t2p->tiff_datasize = (tsize_t) k;
							if ((uint64) t2p->tiff_datasize != k) {
								TIFFError(TIFF2PDF_MODULE, "Integer overflow");
								t2p->t2p_error = T2P_ERR_ERROR;
							}
							return;
						}
						return;
					}else {
						TIFFError(TIFF2PDF_MODULE,
							"Input file %s missing field: TIFFTAG_JPEGIFBYTECOUNT",
							TIFFFileName(input));
							t2p->t2p_error = T2P_ERR_ERROR;
							return;
					}
				}
			}
			k = checkAdd64(k, stripcount, t2p);
			k = checkAdd64(k, stripcount, t2p);
			k = checkAdd64(k, 2048, t2p);
			t2p->tiff_datasize = (tsize_t) k;
			if ((uint64) t2p->tiff_datasize != k) {
				TIFFError(TIFF2PDF_MODULE, "Integer overflow");
				t2p->t2p_error = T2P_ERR_ERROR;
			}
			return;
		}
#endif
#ifdef JPEG_SUPPORT
		if(t2p->tiff_compression == COMPRESSION_JPEG) {
			uint32 count = 0;
			if(TIFFGetField(input, TIFFTAG_JPEGTABLES, &count, &jpt) != 0 ){
				if(count > 4){
					k += count;
					k -= 2;
				}
			} else {
				k = 2;
			}
			stripcount=TIFFNumberOfStrips(input);
			if(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){
				TIFFError(TIFF2PDF_MODULE,
					"Input file %s missing field: TIFFTAG_STRIPBYTECOUNTS",
					TIFFFileName(input));
				t2p->t2p_error = T2P_ERR_ERROR;
				return;
			}
			for(i=0;i<stripcount;i++){
				k = checkAdd64(k, sbc[i], t2p);
				k -=2;
				k +=2;
			}
			k = checkAdd64(k, 2, t2p);
			k = checkAdd64(k, 6, t2p);
			t2p->tiff_datasize = (tsize_t) k;
			if ((uint64) t2p->tiff_datasize != k) {
				TIFFError(TIFF2PDF_MODULE, "Integer overflow");
				t2p->t2p_error = T2P_ERR_ERROR;
			}
			return;
		}
#endif
		(void) 0;
	}
	k = checkMultiply64(TIFFScanlineSize(input), t2p->tiff_length, t2p);
	if(t2p->tiff_planar==PLANARCONFIG_SEPARATE){
		k = checkMultiply64(k, t2p->tiff_samplesperpixel, t2p);
	}
	if (k == 0) {
		t2p->t2p_error = T2P_ERR_ERROR;
	}
	t2p->tiff_datasize = (tsize_t) k;
	if ((uint64) t2p->tiff_datasize != k) {
		TIFFError(TIFF2PDF_MODULE, "Integer overflow");
		t2p->t2p_error = T2P_ERR_ERROR;
	}
	return;
}
['void t2p_read_tiff_size(T2P* t2p, TIFF* input){\n\tuint64* sbc=NULL;\n#if defined(JPEG_SUPPORT) || defined (OJPEG_SUPPORT)\n\tunsigned char* jpt=NULL;\n\ttstrip_t i=0;\n\ttstrip_t stripcount=0;\n#endif\n        uint64 k = 0;\n\tif(t2p->pdf_transcode == T2P_TRANSCODE_RAW){\n#ifdef CCITT_SUPPORT\n\t\tif(t2p->pdf_compression == T2P_COMPRESS_G4 ){\n\t\t\tTIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc);\n            if (sbc[0] != (uint64)(tmsize_t)sbc[0]) {\n                TIFFError(TIFF2PDF_MODULE, "Integer overflow");\n                t2p->t2p_error = T2P_ERR_ERROR;\n            }\n\t\t\tt2p->tiff_datasize=(tmsize_t)sbc[0];\n\t\t\treturn;\n\t\t}\n#endif\n#ifdef ZIP_SUPPORT\n\t\tif(t2p->pdf_compression == T2P_COMPRESS_ZIP){\n\t\t\tTIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc);\n            if (sbc[0] != (uint64)(tmsize_t)sbc[0]) {\n                TIFFError(TIFF2PDF_MODULE, "Integer overflow");\n                t2p->t2p_error = T2P_ERR_ERROR;\n            }\n\t\t\tt2p->tiff_datasize=(tmsize_t)sbc[0];\n\t\t\treturn;\n\t\t}\n#endif\n#ifdef OJPEG_SUPPORT\n\t\tif(t2p->tiff_compression == COMPRESSION_OJPEG){\n\t\t\tif(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){\n\t\t\t\tTIFFError(TIFF2PDF_MODULE,\n\t\t\t\t\t"Input file %s missing field: TIFFTAG_STRIPBYTECOUNTS",\n\t\t\t\t\tTIFFFileName(input));\n\t\t\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tstripcount=TIFFNumberOfStrips(input);\n\t\t\tfor(i=0;i<stripcount;i++){\n\t\t\t\tk = checkAdd64(k, sbc[i], t2p);\n\t\t\t}\n\t\t\tif(TIFFGetField(input, TIFFTAG_JPEGIFOFFSET, &(t2p->tiff_dataoffset))){\n\t\t\t\tif(t2p->tiff_dataoffset != 0){\n\t\t\t\t\tif(TIFFGetField(input, TIFFTAG_JPEGIFBYTECOUNT, &(t2p->tiff_datasize))!=0){\n\t\t\t\t\t\tif((uint64)t2p->tiff_datasize < k) {\n\t\t\t\t\t\t\tTIFFWarning(TIFF2PDF_MODULE,\n\t\t\t\t\t\t\t\t"Input file %s has short JPEG interchange file byte count",\n\t\t\t\t\t\t\t\tTIFFFileName(input));\n\t\t\t\t\t\t\tt2p->pdf_ojpegiflength=t2p->tiff_datasize;\n\t\t\t\t\t\t\tk = checkAdd64(k, t2p->tiff_datasize, t2p);\n\t\t\t\t\t\t\tk = checkAdd64(k, 6, t2p);\n\t\t\t\t\t\t\tk = checkAdd64(k, stripcount, t2p);\n\t\t\t\t\t\t\tk = checkAdd64(k, stripcount, t2p);\n\t\t\t\t\t\t\tt2p->tiff_datasize = (tsize_t) k;\n\t\t\t\t\t\t\tif ((uint64) t2p->tiff_datasize != k) {\n\t\t\t\t\t\t\t\tTIFFError(TIFF2PDF_MODULE, "Integer overflow");\n\t\t\t\t\t\t\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}else {\n\t\t\t\t\t\tTIFFError(TIFF2PDF_MODULE,\n\t\t\t\t\t\t\t"Input file %s missing field: TIFFTAG_JPEGIFBYTECOUNT",\n\t\t\t\t\t\t\tTIFFFileName(input));\n\t\t\t\t\t\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tk = checkAdd64(k, stripcount, t2p);\n\t\t\tk = checkAdd64(k, stripcount, t2p);\n\t\t\tk = checkAdd64(k, 2048, t2p);\n\t\t\tt2p->tiff_datasize = (tsize_t) k;\n\t\t\tif ((uint64) t2p->tiff_datasize != k) {\n\t\t\t\tTIFFError(TIFF2PDF_MODULE, "Integer overflow");\n\t\t\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n#endif\n#ifdef JPEG_SUPPORT\n\t\tif(t2p->tiff_compression == COMPRESSION_JPEG) {\n\t\t\tuint32 count = 0;\n\t\t\tif(TIFFGetField(input, TIFFTAG_JPEGTABLES, &count, &jpt) != 0 ){\n\t\t\t\tif(count > 4){\n\t\t\t\t\tk += count;\n\t\t\t\t\tk -= 2;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tk = 2;\n\t\t\t}\n\t\t\tstripcount=TIFFNumberOfStrips(input);\n\t\t\tif(!TIFFGetField(input, TIFFTAG_STRIPBYTECOUNTS, &sbc)){\n\t\t\t\tTIFFError(TIFF2PDF_MODULE,\n\t\t\t\t\t"Input file %s missing field: TIFFTAG_STRIPBYTECOUNTS",\n\t\t\t\t\tTIFFFileName(input));\n\t\t\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfor(i=0;i<stripcount;i++){\n\t\t\t\tk = checkAdd64(k, sbc[i], t2p);\n\t\t\t\tk -=2;\n\t\t\t\tk +=2;\n\t\t\t}\n\t\t\tk = checkAdd64(k, 2, t2p);\n\t\t\tk = checkAdd64(k, 6, t2p);\n\t\t\tt2p->tiff_datasize = (tsize_t) k;\n\t\t\tif ((uint64) t2p->tiff_datasize != k) {\n\t\t\t\tTIFFError(TIFF2PDF_MODULE, "Integer overflow");\n\t\t\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n#endif\n\t\t(void) 0;\n\t}\n\tk = checkMultiply64(TIFFScanlineSize(input), t2p->tiff_length, t2p);\n\tif(t2p->tiff_planar==PLANARCONFIG_SEPARATE){\n\t\tk = checkMultiply64(k, t2p->tiff_samplesperpixel, t2p);\n\t}\n\tif (k == 0) {\n\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t}\n\tt2p->tiff_datasize = (tsize_t) k;\n\tif ((uint64) t2p->tiff_datasize != k) {\n\t\tTIFFError(TIFF2PDF_MODULE, "Integer overflow");\n\t\tt2p->t2p_error = T2P_ERR_ERROR;\n\t}\n\treturn;\n}', 'int\nTIFFGetField(TIFF* tif, uint32 tag, ...)\n{\n\tint status;\n\tva_list ap;\n\tva_start(ap, tag);\n\tstatus = TIFFVGetField(tif, tag, ap);\n\tva_end(ap);\n\treturn (status);\n}', 'uint32\nTIFFNumberOfStrips(TIFF* tif)\n{\n\tTIFFDirectory *td = &tif->tif_dir;\n\tuint32 nstrips;\n\tnstrips = (td->td_rowsperstrip == (uint32) -1 ? 1 :\n\t     TIFFhowmany_32(td->td_imagelength, td->td_rowsperstrip));\n\tif (td->td_planarconfig == PLANARCONFIG_SEPARATE)\n\t\tnstrips = _TIFFMultiply32(tif, nstrips, (uint32)td->td_samplesperpixel,\n\t\t    "TIFFNumberOfStrips");\n\treturn (nstrips);\n}', 'uint32\n_TIFFMultiply32(TIFF* tif, uint32 first, uint32 second, const char* where)\n{\n\tif (second && first > TIFF_UINT32_MAX / second) {\n\t\tTIFFErrorExt(tif->tif_clientdata, where, "Integer overflow in %s", where);\n\t\treturn 0;\n\t}\n\treturn first * second;\n}']