vl: Abort if multiple machines are registered as default

It would be confusing to have multiple default machines.
Abort if this ever occurs.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20200207161948.15972-4-philmd@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Tested-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
Philippe Mathieu-Daudé 2020-02-07 17:19:48 +01:00 committed by Eduardo Habkost
parent ea0ac7f6f8
commit 6db1857ec9
1 changed files with 4 additions and 2 deletions

View File

@ -1163,16 +1163,18 @@ static MachineClass *find_machine(const char *name, GSList *machines)
static MachineClass *find_default_machine(GSList *machines) static MachineClass *find_default_machine(GSList *machines)
{ {
GSList *el; GSList *el;
MachineClass *default_machineclass = NULL;
for (el = machines; el; el = el->next) { for (el = machines; el; el = el->next) {
MachineClass *mc = el->data; MachineClass *mc = el->data;
if (mc->is_default) { if (mc->is_default) {
return mc; assert(default_machineclass == NULL && "Multiple default machines");
default_machineclass = mc;
} }
} }
return NULL; return default_machineclass;
} }
static int machine_help_func(QemuOpts *opts, MachineState *machine) static int machine_help_func(QemuOpts *opts, MachineState *machine)