From f8386836dfda04c626e63ba9d64c1a4f63867dfa Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Sat, 23 Mar 2019 06:05:46 +0200 Subject: cam: Separate options valid() and empty() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit An empty option list is not necessarily an error. Add a new empty() function to test the option list for emptiness, and modify the valid() function to only notify parsing errors. As a side effect this allows accessing partially parsed options, which may be useful in the future. Signed-off-by: Laurent Pinchart Acked-by: Jacopo Mondi Reviewed-by: Niklas Söderlund --- src/cam/main.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/cam/main.cpp') diff --git a/src/cam/main.cpp b/src/cam/main.cpp index 1ca7862b..e7490c32 100644 --- a/src/cam/main.cpp +++ b/src/cam/main.cpp @@ -67,9 +67,12 @@ static int parseOptions(int argc, char *argv[]) parser.addOption(OptList, OptionNone, "List all cameras", "list"); options = parser.parse(argc, argv); - if (!options.valid() || options.isSet(OptHelp)) { + if (!options.valid()) + return -EINVAL; + + if (options.empty() || options.isSet(OptHelp)) { parser.usage(); - return !options.valid() ? -EINVAL : -EINTR; + return options.empty() ? -EINVAL : -EINTR; } return 0; -- cgit v1.2.1