ffmpeg.c:3762: error: Null Dereference
  pointer `p` last assigned on line 3762 could be null and is dereferenced at line 3762, column 5.

ffmpeg.c:3748:1: start of procedure opt_streamid()
3746. 
3747. /* arg format is "output-stream-index:streamid-value". */
3748. static int opt_streamid(const char *opt, const char *arg)
      ^
3749. {
3750.     int idx;

ffmpeg.c:3754:5: 
3752.     char idx_str[16];
3753. 
3754.     av_strlcpy(idx_str, arg, sizeof(idx_str));
          ^
3755.     p = strchr(idx_str, ':');
3756.     if (!p) {

libavutil/avstring.c:64:1: start of procedure av_strlcpy()
  62. }
  63. 
  64. size_t av_strlcpy(char *dst, const char *src, size_t size)
      ^
  65. {
  66.     size_t len = 0;

libavutil/avstring.c:66:5: 
  64. size_t av_strlcpy(char *dst, const char *src, size_t size)
  65. {
  66.     size_t len = 0;
          ^
  67.     while (++len < size && *src)
  68.         *dst++ = *src++;

libavutil/avstring.c:67:12: Loop condition is true. Entering loop body
  65. {
  66.     size_t len = 0;
  67.     while (++len < size && *src)
                 ^
  68.         *dst++ = *src++;
  69.     if (len <= size)

libavutil/avstring.c:67:28: Loop condition is false. Leaving loop
  65. {
  66.     size_t len = 0;
  67.     while (++len < size && *src)
                                 ^
  68.         *dst++ = *src++;
  69.     if (len <= size)

libavutil/avstring.c:69:9: Taking true branch
  67.     while (++len < size && *src)
  68.         *dst++ = *src++;
  69.     if (len <= size)
              ^
  70.         *dst = 0;
  71.     return len + strlen(src) - 1;

libavutil/avstring.c:70:9: 
  68.         *dst++ = *src++;
  69.     if (len <= size)
  70.         *dst = 0;
              ^
  71.     return len + strlen(src) - 1;
  72. }

libavutil/avstring.c:71:5: 
  69.     if (len <= size)
  70.         *dst = 0;
  71.     return len + strlen(src) - 1;
          ^
  72. }
  73. 

libavutil/avstring.c:72:1: return from a call to av_strlcpy
  70.         *dst = 0;
  71.     return len + strlen(src) - 1;
  72. }
      ^
  73. 
  74. size_t av_strlcat(char *dst, const char *src, size_t size)

ffmpeg.c:3755:5: 
3753. 
3754.     av_strlcpy(idx_str, arg, sizeof(idx_str));
3755.     p = strchr(idx_str, ':');
          ^
3756.     if (!p) {
3757.         fprintf(stderr,

ffmpeg.c:3756:10: Taking true branch
3754.     av_strlcpy(idx_str, arg, sizeof(idx_str));
3755.     p = strchr(idx_str, ':');
3756.     if (!p) {
               ^
3757.         fprintf(stderr,
3758.                 "Invalid value '%s' for option '%s', required syntax is 'index:value'\n",

ffmpeg.c:3757:9: 
3755.     p = strchr(idx_str, ':');
3756.     if (!p) {
3757.         fprintf(stderr,
              ^
3758.                 "Invalid value '%s' for option '%s', required syntax is 'index:value'\n",
3759.                 arg, opt);

ffmpeg.c:3760:9: Skipping ffmpeg_exit(): empty list of specs
3758.                 "Invalid value '%s' for option '%s', required syntax is 'index:value'\n",
3759.                 arg, opt);
3760.         ffmpeg_exit(1);
              ^
3761.     }
3762.     *p++ = '\0';

ffmpeg.c:3762:5: 
3760.         ffmpeg_exit(1);
3761.     }
3762.     *p++ = '\0';
          ^
3763.     idx = parse_number_or_die(opt, idx_str, OPT_INT, 0, MAX_STREAMS-1);
3764.     streamid_map = grow_array(streamid_map, sizeof(*streamid_map), &nb_streamid_map, idx+1);
