softmmu/vl.c: Check for the availability of the VGA device before using it
In case the user disabled the default VGA device in the binary (e.g. with the "--without-default-devices" configure switch), we should not try to use it by default if QEMU is running with the default devices, otherwise it aborts when trying to use it. Simply emit a warning instead. Message-Id: <20230512124033.502654-3-thuth@redhat.com> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
d11b791890
commit
d563cc84cd
13
softmmu/vl.c
13
softmmu/vl.c
@ -957,7 +957,18 @@ static const char *
|
|||||||
get_default_vga_model(const MachineClass *machine_class)
|
get_default_vga_model(const MachineClass *machine_class)
|
||||||
{
|
{
|
||||||
if (machine_class->default_display) {
|
if (machine_class->default_display) {
|
||||||
return machine_class->default_display;
|
for (int t = 0; t < VGA_TYPE_MAX; t++) {
|
||||||
|
const VGAInterfaceInfo *ti = &vga_interfaces[t];
|
||||||
|
|
||||||
|
if (ti->opt_name && vga_interface_available(t) &&
|
||||||
|
g_str_equal(ti->opt_name, machine_class->default_display)) {
|
||||||
|
return machine_class->default_display;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
warn_report_once("Default display '%s' is not available in this binary",
|
||||||
|
machine_class->default_display);
|
||||||
|
return NULL;
|
||||||
} else if (vga_interface_available(VGA_CIRRUS)) {
|
} else if (vga_interface_available(VGA_CIRRUS)) {
|
||||||
return "cirrus";
|
return "cirrus";
|
||||||
} else if (vga_interface_available(VGA_STD)) {
|
} else if (vga_interface_available(VGA_STD)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user