init: allow FIO_OPT_STR_SET options to have an optional argument
[fio.git] / parse.c
diff --git a/parse.c b/parse.c
index b8ec3aa86a4262849726ba3f3a5e4591b61c990c..5e3573ea646fcb52ca1b08d043712d2c89efb0c6 100644 (file)
--- a/parse.c
+++ b/parse.c
@@ -380,7 +380,7 @@ static int str_match_len(const struct value_pair *vp, const char *str)
 static int __handle_option(struct fio_option *o, const char *ptr, void *data,
                           int first, int more, int curr)
 {
-       int il, *ilp;
+       int il=0, *ilp;
        fio_fp64_t *flp;
        long long ull, *ullp;
        long ul1, ul2;
@@ -788,6 +788,7 @@ static int __handle_option(struct fio_option *o, const char *ptr, void *data,
        }
        case FIO_OPT_DEPRECATED:
                log_info("Option %s is deprecated\n", o->name);
+               ret = 1;
                break;
        default:
                log_err("Bad option type %u\n", o->type);
@@ -1086,6 +1087,8 @@ int show_cmd_help(struct fio_option *options, const char *name)
                        continue;
                if (!exec_profile && o->prof_name)
                        continue;
+               if (exec_profile && !(o->prof_name && !strcmp(exec_profile, o->prof_name)))
+                       continue;
 
                if (name) {
                        if (!strcmp(name, o->name) ||