libswscale/swscale.c:2994: error: Null Dereference
  pointer `vec` last assigned on line 2992 could be null and is dereferenced at line 2994, column 5.

libswscale/swscale.c:2988:1: start of procedure sws_diffVec()
2986. }
2987. 
2988. static SwsVector *sws_diffVec(SwsVector *a, SwsVector *b){
      ^
2989.     int length= FFMAX(a->length, b->length);
2990.     double *coeff= av_malloc(length*sizeof(double));

libswscale/swscale.c:2989:17: Condition is true
2987. 
2988. static SwsVector *sws_diffVec(SwsVector *a, SwsVector *b){
2989.     int length= FFMAX(a->length, b->length);
                      ^
2990.     double *coeff= av_malloc(length*sizeof(double));
2991.     int i;

libswscale/swscale.c:2989:5: 
2987. 
2988. static SwsVector *sws_diffVec(SwsVector *a, SwsVector *b){
2989.     int length= FFMAX(a->length, b->length);
          ^
2990.     double *coeff= av_malloc(length*sizeof(double));
2991.     int i;

libswscale/swscale.c:2990:5: 
2988. static SwsVector *sws_diffVec(SwsVector *a, SwsVector *b){
2989.     int length= FFMAX(a->length, b->length);
2990.     double *coeff= av_malloc(length*sizeof(double));
          ^
2991.     int i;
2992.     SwsVector *vec= av_malloc(sizeof(SwsVector));

libavutil/mem.c:47:1: start of procedure av_malloc()
  45.    linker will do it automatically. */
  46. 
  47. void *av_malloc(unsigned int size)
      ^
  48. {
  49.     void *ptr = NULL;

libavutil/mem.c:49:5: 
  47. void *av_malloc(unsigned int size)
  48. {
  49.     void *ptr = NULL;
          ^
  50. #if CONFIG_MEMALIGN_HACK
  51.     long diff;

libavutil/mem.c:55:8: Taking false branch
  53. 
  54.     /* let's disallow possible ambiguous cases */
  55.     if(size > (INT_MAX-16) )
             ^
  56.         return NULL;
  57. 

libavutil/mem.c:66:9: Taking false branch
  64.     ((char*)ptr)[-1]= diff;
  65. #elif HAVE_POSIX_MEMALIGN
  66.     if (posix_memalign(&ptr,16,size))
              ^
  67.         ptr = NULL;
  68. #elif HAVE_MEMALIGN

libavutil/mem.c:99:5: 
   97.     ptr = malloc(size);
   98. #endif
   99.     return ptr;
           ^
  100. }
  101. 

libavutil/mem.c:100:1: return from a call to av_malloc
   98. #endif
   99.     return ptr;
  100. }
       ^
  101. 
  102. void *av_realloc(void *ptr, unsigned int size)

libswscale/swscale.c:2992:5: 
2990.     double *coeff= av_malloc(length*sizeof(double));
2991.     int i;
2992.     SwsVector *vec= av_malloc(sizeof(SwsVector));
          ^
2993. 
2994.     vec->coeff= coeff;

libavutil/mem.c:47:1: start of procedure av_malloc()
  45.    linker will do it automatically. */
  46. 
  47. void *av_malloc(unsigned int size)
      ^
  48. {
  49.     void *ptr = NULL;

libavutil/mem.c:49:5: 
  47. void *av_malloc(unsigned int size)
  48. {
  49.     void *ptr = NULL;
          ^
  50. #if CONFIG_MEMALIGN_HACK
  51.     long diff;

libavutil/mem.c:55:8: Taking false branch
  53. 
  54.     /* let's disallow possible ambiguous cases */
  55.     if(size > (INT_MAX-16) )
             ^
  56.         return NULL;
  57. 

libavutil/mem.c:66:9: Taking true branch
  64.     ((char*)ptr)[-1]= diff;
  65. #elif HAVE_POSIX_MEMALIGN
  66.     if (posix_memalign(&ptr,16,size))
              ^
  67.         ptr = NULL;
  68. #elif HAVE_MEMALIGN

libavutil/mem.c:67:9: 
  65. #elif HAVE_POSIX_MEMALIGN
  66.     if (posix_memalign(&ptr,16,size))
  67.         ptr = NULL;
              ^
  68. #elif HAVE_MEMALIGN
  69.     ptr = memalign(16,size);

libavutil/mem.c:99:5: 
   97.     ptr = malloc(size);
   98. #endif
   99.     return ptr;
           ^
  100. }
  101. 

libavutil/mem.c:100:1: return from a call to av_malloc
   98. #endif
   99.     return ptr;
  100. }
       ^
  101. 
  102. void *av_realloc(void *ptr, unsigned int size)

libswscale/swscale.c:2994:5: 
2992.     SwsVector *vec= av_malloc(sizeof(SwsVector));
2993. 
2994.     vec->coeff= coeff;
          ^
2995.     vec->length= length;
2996. 
