diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2017-01-27 14:41:40 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2017-01-27 14:41:40 +0000 |
commit | 42086cc42adf44ae27f4fb890f74b34e5ff123fe (patch) | |
tree | ecebc31be8a405400fbcb2a828e821e7f3ddcd4f /main.c | |
parent | 893966b72e56377b567f265988a4d70023e16b1c (diff) | |
download | mandoc-42086cc42adf44ae27f4fb890f74b34e5ff123fe.tar.gz mandoc-42086cc42adf44ae27f4fb890f74b34e5ff123fe.tar.zst mandoc-42086cc42adf44ae27f4fb890f74b34e5ff123fe.zip |
merge manpath.c 1.32, main.c 1.280: warn about invalid output options
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.273.2.4 2017/01/09 17:57:15 schwarze Exp $ */ +/* $Id: main.c,v 1.273.2.5 2017/01/27 14:41:40 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010-2012, 2014-2017 Ingo Schwarze <schwarze@openbsd.org> @@ -125,6 +125,7 @@ main(int argc, char *argv[]) struct manpage *res, *resp; char *conf_file, *defpaths; const char *sec; + const char *thisarg; size_t i, sz; int prio, best_prio; enum outmode outmode; @@ -251,9 +252,14 @@ main(int argc, char *argv[]) break; case 'O': search.outkey = optarg; - while (optarg != NULL) - manconf_output(&conf.output, - strsep(&optarg, ",")); + while (optarg != NULL) { + thisarg = optarg; + if (manconf_output(&conf.output, + strsep(&optarg, ","), 0) == 0) + continue; + warnx("-O %s: Bad argument", thisarg); + return (int)MANDOCLEVEL_BADARG; + } break; case 'S': search.arch = optarg; |