parse: enable options to be marked dont-free
[fio.git] / parse.c
diff --git a/parse.c b/parse.c
index fd5605f0c33f2bdb56dea64012b658d7d7c82b40..ecce8b89dba99f5bd8af7120d10a2843fac056cf 100644 (file)
--- a/parse.c
+++ b/parse.c
@@ -135,6 +135,7 @@ static unsigned long long get_mult_time(const char *str, int len,
        const char *p = str;
        char *c;
        unsigned long long mult = 1;
+       int i;
 
        /*
          * Go forward until we hit a non-digit, or +/- sign
@@ -153,7 +154,7 @@ static unsigned long long get_mult_time(const char *str, int len,
        }
 
        c = strdup(p);
-       for (int i = 0; i < strlen(c); i++)
+       for (i = 0; i < strlen(c); i++)
                c[i] = tolower(c[i]);
 
        if (!strncmp("us", c, 2) || !strncmp("usec", c, 4))
@@ -1344,7 +1345,7 @@ void options_free(struct fio_option *options, void *data)
        dprint(FD_PARSE, "free options\n");
 
        for (o = &options[0]; o->name; o++) {
-               if (o->type != FIO_OPT_STR_STORE || !o->off1)
+               if (o->type != FIO_OPT_STR_STORE || !o->off1 || o->no_free)
                        continue;
 
                ptr = td_var(data, o, o->off1);