aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ck.c1
-rw-r--r--src/clparser.c2
-rw-r--r--src/clparser.h1
3 files changed, 4 insertions, 0 deletions
diff --git a/src/ck.c b/src/ck.c
index b9e6f53..1364d23 100644
--- a/src/ck.c
+++ b/src/ck.c
@@ -43,6 +43,7 @@ int main(int argc, const char **argv) {
/* get user opt */
if (parse_action(argc, argv, &opt)) {
+ if(opt.version) rc = 0;
goto error;
}
/* If the action is init or help don't load the config, skip to running it*/
diff --git a/src/clparser.c b/src/clparser.c
index 3a2a9a6..fbcd3ee 100644
--- a/src/clparser.c
+++ b/src/clparser.c
@@ -133,6 +133,7 @@ CkAction parser_get_action(const char *name, char *actionName) {
static UserOpt make_empty_user_opt() {
UserOpt opt;
+ opt.version = 0;
opt.action = CK_WRONG_ACTION;
opt.err = PERR_NOERR;
opt.confDir = NULL;
@@ -293,6 +294,7 @@ int parse_action(int argc, const char **argv, UserOpt *opt) {
verbose();
/* handle version info */
if (version()) {
+ opt->version = 1;
return -1;
}
/* figure what is the config file */
diff --git a/src/clparser.h b/src/clparser.h
index 1ba6d00..242f414 100644
--- a/src/clparser.h
+++ b/src/clparser.h
@@ -53,6 +53,7 @@ typedef enum CkActions CkAction;
typedef struct UserOptions UserOpt;
struct UserOptions {
+ int version;
ParseError err;
CkAction action;
char *confDir;