{
char *s = *p;
+ if (!strlen(s))
+ return;
while (isspace((int) *s))
s++;
{
char *start = p, *s;
+ if (!strlen(p))
+ return;
+
s = strchr(p, ';');
if (s)
*s = '\0';
for (o = &options[0]; o->name; o++)
option_init(o);
}
+
+void options_free(struct fio_option *options, void *data)
+{
+ struct fio_option *o;
+ char **ptr;
+
+ dprint(FD_PARSE, "free options\n");
+
+ for (o = &options[0]; o->name; o++) {
+ if (o->type != FIO_OPT_STR_STORE)
+ continue;
+
+ ptr = td_var(data, o->off1);
+ if (*ptr) {
+ free(*ptr);
+ *ptr = NULL;
+ }
+ }
+}