tools/tiffcrop.c:7190: error: Null Dereference
  pointer `sect_buff` last assigned on line 7185 could be null and is dereferenced by call to `_TIFFmemset()` at line 7190, column 7.

tools/tiffcrop.c:7162:1: start of procedure createImageSection()
7160. 
7161. /* Create a buffer to write one section at a time */
7162. static int
      ^
7163. createImageSection(uint32 sectsize, unsigned char **sect_buff_ptr)
7164.   {

tools/tiffcrop.c:7165:3: 
7163. createImageSection(uint32 sectsize, unsigned char **sect_buff_ptr)
7164.   {
7165.   unsigned  char *sect_buff = NULL;
        ^
7166.   unsigned  char *new_buff  = NULL;
7167.   static    uint32  prev_sectsize = 0;

tools/tiffcrop.c:7166:3: 
7164.   {
7165.   unsigned  char *sect_buff = NULL;
7166.   unsigned  char *new_buff  = NULL;
        ^
7167.   static    uint32  prev_sectsize = 0;
7168.   

tools/tiffcrop.c:7167:3: 
7165.   unsigned  char *sect_buff = NULL;
7166.   unsigned  char *new_buff  = NULL;
7167.   static    uint32  prev_sectsize = 0;
        ^
7168.   
7169.   sect_buff = *sect_buff_ptr;

tools/tiffcrop.c:7169:3: 
7167.   static    uint32  prev_sectsize = 0;
7168.   
7169.   sect_buff = *sect_buff_ptr;
        ^
7170. 
7171.   if (!sect_buff)

tools/tiffcrop.c:7171:8: Taking false branch
7169.   sect_buff = *sect_buff_ptr;
7170. 
7171.   if (!sect_buff)
             ^
7172.     {
7173.     sect_buff = (unsigned char *)_TIFFmalloc(sectsize);

tools/tiffcrop.c:7179:9: Taking true branch
7177.   else
7178.     {
7179.     if (prev_sectsize < sectsize)
              ^
7180.       {
7181.       new_buff = _TIFFrealloc(sect_buff, sectsize);

tools/tiffcrop.c:7181:7: 
7179.     if (prev_sectsize < sectsize)
7180.       {
7181.       new_buff = _TIFFrealloc(sect_buff, sectsize);
            ^
7182.       if (!new_buff)
7183.         {

libtiff/tif_unix.c:272:1: start of procedure _TIFFrealloc()
  270. }
  271. 
  272. void*
       ^
  273. _TIFFrealloc(void* p, tmsize_t s)
  274. {

libtiff/tif_unix.c:275:2: 
  273. _TIFFrealloc(void* p, tmsize_t s)
  274. {
  275. 	return (realloc(p, (size_t) s));
        ^
  276. }
  277. 

libtiff/tif_unix.c:276:1: return from a call to _TIFFrealloc
  274. {
  275. 	return (realloc(p, (size_t) s));
  276. }
       ^
  277. 
  278. void

tools/tiffcrop.c:7182:12: Taking true branch
7180.       {
7181.       new_buff = _TIFFrealloc(sect_buff, sectsize);
7182.       if (!new_buff)
                 ^
7183.         {
7184. 	free (sect_buff);

tools/tiffcrop.c:7184:2: 
7182.       if (!new_buff)
7183.         {
7184. 	free (sect_buff);
       ^
7185.         sect_buff = (unsigned char *)_TIFFmalloc(sectsize);
7186.         }

tools/tiffcrop.c:7185:9: 
7183.         {
7184. 	free (sect_buff);
7185.         sect_buff = (unsigned char *)_TIFFmalloc(sectsize);
              ^
7186.         }
7187.       else

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/tiffcrop.c:7190:7: 
7188.         sect_buff = new_buff;
7189. 
7190.       _TIFFmemset(sect_buff, 0, sectsize);
            ^
7191.       }
7192.     }

libtiff/tif_unix.c:278:1: start of procedure _TIFFmemset()
  276. }
  277. 
  278. void
       ^
  279. _TIFFmemset(void* p, int v, tmsize_t c)
  280. {

libtiff/tif_unix.c:281:2: 
  279. _TIFFmemset(void* p, int v, tmsize_t c)
  280. {
  281. 	memset(p, v, (size_t) c);
        ^
  282. }
  283. 

libtiff/tif_unix.c:282:1: return from a call to _TIFFmemset
  280. {
  281. 	memset(p, v, (size_t) c);
  282. }
       ^
  283. 
  284. void
