summaryrefslogtreecommitdiff
path: root/cmdutils.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-05-09 13:07:21 +0200
committerMichael Niedermayer <michaelni@gmx.at>2015-05-09 13:07:21 +0200
commit876c89a88f6470b8d90b54f05a6add84e996cba3 (patch)
treebc4f084d8c8f4beca63f7944752658f6f1732a41 /cmdutils.c
parent107e4da47644fe615ea821d6a19682d73789aca7 (diff)
cmdline: Check options array for not working flag combinations
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'cmdutils.c')
-rw-r--r--cmdutils.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/cmdutils.c b/cmdutils.c
index ed6951f6b7..db89256d02 100644
--- a/cmdutils.c
+++ b/cmdutils.c
@@ -482,10 +482,22 @@ static void dump_argument(const char *a)
fputc('"', report_file);
}
+static void check_options(const OptionDef *po)
+{
+ while (po->name) {
+ if (po->flags & OPT_PERFILE)
+ av_assert0(po->flags & (OPT_INPUT | OPT_OUTPUT));
+ po++;
+ }
+}
+
void parse_loglevel(int argc, char **argv, const OptionDef *options)
{
int idx = locate_option(argc, argv, options, "loglevel");
const char *env;
+
+ check_options(options);
+
if (!idx)
idx = locate_option(argc, argv, options, "v");
if (idx && argv[idx + 1])