Don't call exit() in library
diff --git a/src/lib/u/uoption.c b/src/lib/u/uoption.c
index f3c7df9..3cf9971 100644
--- a/src/lib/u/uoption.c
+++ b/src/lib/u/uoption.c
@@ -199,8 +199,6 @@
print_help_buf(&help_buf);
free_help_buf(&help_buf);
-
- exit (0);
}
static void print_long_help(u_option_context_t *ctx, char *hoption)
@@ -260,8 +258,6 @@
print_help_buf(&help_buf);
free_help_buf(&help_buf);
-
- exit (0);
}
static unsigned int context_get_number_entries(u_option_context_t *ctx)
@@ -418,6 +414,7 @@
if (!strncmp(option, "help", strlen("help")) ) {
if (ctx->mode & U_OPTION_CONTEXT_HELP_ENABLED) {
print_long_help(ctx, option);
+ return NULL;
}
}
@@ -455,6 +452,7 @@
if (option == '?') {
if (ctx->mode & U_OPTION_CONTEXT_HELP_ENABLED) {
print_short_help(ctx);
+ return NULL;
}
}