[FFmpeg-devel] [PATCH] fftools/cmdutils: don't try to load arguments from file if not needed

Kacper Michajłow kasper93 at gmail.com
Mon Jun 30 21:36:09 EEST 2025


CLI option parser checks if argument exists when needed, but in this
case only OPT_TYPE_BOOL where checked, so OPT_TYPE_FUNC without argument
where trying to load a file from `arg` which is NULL in this case.

Fixes crash on `ffmpeg -/version`

Fixes: 6d17991b7e1bf1a5d104c8a6261709f7e6640d97
Signed-off-by: Kacper Michajłow <kasper93 at gmail.com>
---
 fftools/cmdutils.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c
index be21ed2c6c..e442935cae 100644
--- a/fftools/cmdutils.c
+++ b/fftools/cmdutils.c
@@ -255,9 +255,10 @@ static int write_option(void *optctx, const OptionDef *po, const char *opt,
     if (*opt == '/') {
         opt++;
 
-        if (po->type == OPT_TYPE_BOOL) {
+        if (!opt_has_arg(po)) {
             av_log(NULL, AV_LOG_FATAL,
-                   "Requested to load an argument from file for a bool option '%s'\n",
+                   "Requested to load an argument from file for an option '%s'"
+                   " which does not take an argument\n",
                    po->name);
             return AVERROR(EINVAL);
         }
-- 
2.45.1



More information about the ffmpeg-devel mailing list