Clear option before adding to array if no -a, reported by Michael

Nickerson.
This commit is contained in:
nicm 2017-01-25 23:50:51 +00:00
parent 163732e89f
commit 776ce8a9d5

View File

@ -211,9 +211,11 @@ cmd_set_option_exec(struct cmd *self, struct cmdq_item *item)
}
if (o == NULL)
o = options_empty(oo, options_table_entry(parent));
if (idx == -1)
if (idx == -1) {
if (!append)
options_array_clear(o);
options_array_assign(o, value);
else if (options_array_set(o, idx, value, append) != 0) {
} else if (options_array_set(o, idx, value, append) != 0) {
cmdq_error(item, "invalid index: %s", args->argv[0]);
return (CMD_RETURN_ERROR);
}