ffmpeg.c:4157: error: Null Dereference
  pointer `f` last assigned on line 4152 could be null and is dereferenced by call to `feof()` at line 4157, column 12.

ffmpeg.c:4144:1: start of procedure opt_preset()
4142. }
4143. 
4144. static int opt_preset(const char *opt, const char *arg)
      ^
4145. {
4146.     FILE *f=NULL;

ffmpeg.c:4146:5: 
4144. static int opt_preset(const char *opt, const char *arg)
4145. {
4146.     FILE *f=NULL;
          ^
4147.     char filename[1000], tmp[1000], tmp2[1000], line[1000];
4148.     char *codec_name = *opt == 'v' ? video_codec_name :

ffmpeg.c:4148:24: Condition is false
4146.     FILE *f=NULL;
4147.     char filename[1000], tmp[1000], tmp2[1000], line[1000];
4148.     char *codec_name = *opt == 'v' ? video_codec_name :
                             ^
4149.                        *opt == 'a' ? audio_codec_name :
4150.                                      subtitle_codec_name;

ffmpeg.c:4149:24: Condition is false
4147.     char filename[1000], tmp[1000], tmp2[1000], line[1000];
4148.     char *codec_name = *opt == 'v' ? video_codec_name :
4149.                        *opt == 'a' ? audio_codec_name :
                             ^
4150.                                      subtitle_codec_name;
4151. 

ffmpeg.c:4148:24: 
4146.     FILE *f=NULL;
4147.     char filename[1000], tmp[1000], tmp2[1000], line[1000];
4148.     char *codec_name = *opt == 'v' ? video_codec_name :
                             ^
4149.                        *opt == 'a' ? audio_codec_name :
4150.                                      subtitle_codec_name;

ffmpeg.c:4148:5: 
4146.     FILE *f=NULL;
4147.     char filename[1000], tmp[1000], tmp2[1000], line[1000];
4148.     char *codec_name = *opt == 'v' ? video_codec_name :
          ^
4149.                        *opt == 'a' ? audio_codec_name :
4150.                                      subtitle_codec_name;

ffmpeg.c:4152:64: Condition is false
4150.                                      subtitle_codec_name;
4151. 
4152.     if (!(f = get_preset_file(filename, sizeof(filename), arg, *opt == 'f', codec_name))) {
                                                                     ^
4153.         fprintf(stderr, "File for preset '%s' not found\n", arg);
4154.         ffmpeg_exit(1);

ffmpeg.c:4152:11: Taking true branch
4150.                                      subtitle_codec_name;
4151. 
4152.     if (!(f = get_preset_file(filename, sizeof(filename), arg, *opt == 'f', codec_name))) {
                ^
4153.         fprintf(stderr, "File for preset '%s' not found\n", arg);
4154.         ffmpeg_exit(1);

ffmpeg.c:4153:9: 
4151. 
4152.     if (!(f = get_preset_file(filename, sizeof(filename), arg, *opt == 'f', codec_name))) {
4153.         fprintf(stderr, "File for preset '%s' not found\n", arg);
              ^
4154.         ffmpeg_exit(1);
4155.     }

ffmpeg.c:4154:9: Skipping ffmpeg_exit(): empty list of specs
4152.     if (!(f = get_preset_file(filename, sizeof(filename), arg, *opt == 'f', codec_name))) {
4153.         fprintf(stderr, "File for preset '%s' not found\n", arg);
4154.         ffmpeg_exit(1);
              ^
4155.     }
4156. 

ffmpeg.c:4157:12: 
4155.     }
4156. 
4157.     while(!feof(f)){
                 ^
4158.         int e= fscanf(f, "%999[^\n]\n", line) - 1;
4159.         if(line[0] == '#' && !e)
