mirror of https://gitee.com/openkylin/qemu.git
option: Add assigned flag to QEMUOptionParameter
Adds an "assigned" flag to QEMUOptionParameter which is cleared at the beginning of parse_option_parameters and set on (successful) set_option_parameter and set_option_parameter_int. Signed-off-by: Max Reitz <mreitz@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
9faa574f7d
commit
d4ca092a42
|
@ -46,6 +46,7 @@ typedef struct QEMUOptionParameter {
|
|||
char* s;
|
||||
} value;
|
||||
const char *help;
|
||||
bool assigned;
|
||||
} QEMUOptionParameter;
|
||||
|
||||
|
||||
|
|
|
@ -275,6 +275,8 @@ int set_option_parameter(QEMUOptionParameter *list, const char *name,
|
|||
return -1;
|
||||
}
|
||||
|
||||
list->assigned = true;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -306,6 +308,8 @@ int set_option_parameter_int(QEMUOptionParameter *list, const char *name,
|
|||
return -1;
|
||||
}
|
||||
|
||||
list->assigned = true;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -397,6 +401,7 @@ QEMUOptionParameter *parse_option_parameters(const char *param,
|
|||
char value[256];
|
||||
char *param_delim, *value_delim;
|
||||
char next_delim;
|
||||
int i;
|
||||
|
||||
if (list == NULL) {
|
||||
return NULL;
|
||||
|
@ -406,6 +411,10 @@ QEMUOptionParameter *parse_option_parameters(const char *param,
|
|||
dest = allocated = append_option_parameters(NULL, list);
|
||||
}
|
||||
|
||||
for (i = 0; dest[i].name; i++) {
|
||||
dest[i].assigned = false;
|
||||
}
|
||||
|
||||
while (*param) {
|
||||
|
||||
// Find parameter name and value in the string
|
||||
|
|
Loading…
Reference in New Issue