From 9d3009c6c4b9b6734f07df7c88f6a42ded6cdf38 Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Wed, 20 Feb 2013 08:02:16 +0100 Subject: avconv: print an error on applying options of the wrong type. I.e. input options to output files or vice versa. --- cmdutils.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'cmdutils.c') diff --git a/cmdutils.c b/cmdutils.c index 4655681e4a..ff4b0270c3 100644 --- a/cmdutils.c +++ b/cmdutils.c @@ -351,6 +351,16 @@ int parse_optgroup(void *optctx, OptionGroup *g) for (i = 0; i < g->nb_opts; i++) { Option *o = &g->opts[i]; + if (g->group_def->flags && + !(g->group_def->flags & o->opt->flags)) { + av_log(NULL, AV_LOG_ERROR, "Option %s (%s) cannot be applied to " + "%s %s -- you are trying to apply an input option to an " + "output file or vice versa. Move this option before the " + "file it belongs to.\n", o->key, o->opt->help, + g->group_def->name, g->arg); + return AVERROR(EINVAL); + } + av_log(NULL, AV_LOG_DEBUG, "Applying option %s (%s) with argument %s.\n", o->key, o->opt->help, o->val); -- cgit v1.2.3