@@ -1159,7 +1159,9 @@ int init_report(const char *env, FILE **file)
report_file_level = strtol(val, &tail, 10);
if (*tail) {
av_log(NULL, AV_LOG_FATAL, "Invalid report file level\n");
- exit_program(1);
+ av_free(key);
+ av_free(val);
+ return AVERROR(EINVAL);
}
envlevel = 1;
} else {
@@ -1219,7 +1221,7 @@ int opt_max_alloc(void *optctx, const char *opt, const char *arg)
max = strtol(arg, &tail, 10);
if (*tail) {
av_log(NULL, AV_LOG_FATAL, "Invalid max_alloc \"%s\".\n", arg);
- exit_program(1);
+ return AVERROR(EINVAL);
}
av_max_alloc(max);
return 0;
@@ -1293,7 +1295,7 @@ int opt_loglevel(void *optctx, const char *opt, const char *arg)
"Possible levels are numbers or:\n", arg);
for (i = 0; i < FF_ARRAY_ELEMS(log_levels); i++)
av_log(NULL, AV_LOG_FATAL, "\"%s\"\n", log_levels[i].name);
- exit_program(1);
+ return AVERROR(EINVAL);
}
end: