libavformat/matroskaenc.c:676: error: Null Dereference
  pointer `mkv->md5_ctx` last assigned on line 675 could be null and is dereferenced by call to `av_md5_init()` at line 676, column 5.

libavformat/matroskaenc.c:667:1: start of procedure mkv_write_header()
665. }
666. 
667. static int mkv_write_header(AVFormatContext *s)
     ^
668. {
669.     MatroskaMuxContext *mkv = s->priv_data;

libavformat/matroskaenc.c:669:5: 
667. static int mkv_write_header(AVFormatContext *s)
668. {
669.     MatroskaMuxContext *mkv = s->priv_data;
         ^
670.     ByteIOContext *pb = s->pb;
671.     ebml_master ebml_header, segment_info;

libavformat/matroskaenc.c:670:5: 
668. {
669.     MatroskaMuxContext *mkv = s->priv_data;
670.     ByteIOContext *pb = s->pb;
         ^
671.     ebml_master ebml_header, segment_info;
672.     AVMetadataTag *tag;

libavformat/matroskaenc.c:675:5: 
673.     int ret;
674. 
675.     mkv->md5_ctx = av_mallocz(av_md5_size);
         ^
676.     av_md5_init(mkv->md5_ctx);
677. 

libavutil/mem.c:140:1: start of procedure av_mallocz()
  138. }
  139. 
  140. void *av_mallocz(unsigned int size)
       ^
  141. {
  142.     void *ptr = av_malloc(size);

libavutil/mem.c:142:5: 
  140. void *av_mallocz(unsigned int size)
  141. {
  142.     void *ptr = av_malloc(size);
           ^
  143.     if (ptr)
  144.         memset(ptr, 0, size);

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 true branch
    53. 
    54.     /* let's disallow possible ambiguous cases */
    55.     if(size > (INT_MAX-16) )
               ^
    56.         return NULL;
    57. 

libavutil/mem.c:56:9: 
    54.     /* let's disallow possible ambiguous cases */
    55.     if(size > (INT_MAX-16) )
    56.         return NULL;
                ^
    57. 
    58. #if CONFIG_MEMALIGN_HACK

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)

libavutil/mem.c:143:9: Taking false branch
  141. {
  142.     void *ptr = av_malloc(size);
  143.     if (ptr)
               ^
  144.         memset(ptr, 0, size);
  145.     return ptr;

libavutil/mem.c:145:5: 
  143.     if (ptr)
  144.         memset(ptr, 0, size);
  145.     return ptr;
           ^
  146. }
  147. 

libavutil/mem.c:146:1: return from a call to av_mallocz
  144.         memset(ptr, 0, size);
  145.     return ptr;
  146. }
       ^
  147. 
  148. char *av_strdup(const char *s)

libavformat/matroskaenc.c:676:5: 
674. 
675.     mkv->md5_ctx = av_mallocz(av_md5_size);
676.     av_md5_init(mkv->md5_ctx);
         ^
677. 
678.     ebml_header = start_ebml_master(pb, EBML_ID_HEADER, 0);

libavutil/md5.c:118:1: start of procedure av_md5_init()
  116. }
  117. 
  118. void av_md5_init(AVMD5 *ctx){
       ^
  119.     ctx->len    = 0;
  120. 

libavutil/md5.c:119:5: 
  117. 
  118. void av_md5_init(AVMD5 *ctx){
  119.     ctx->len    = 0;
           ^
  120. 
  121.     ctx->ABCD[0] = 0x10325476;
