|
@@ -1434,25 +1434,25 @@ bool qemu_console_is_gl_blocked(QemuConsole *con)
|
|
return con->gl_block;
|
|
return con->gl_block;
|
|
}
|
|
}
|
|
|
|
|
|
-static bool qemu_console_is_multihead(DeviceState *dev)
|
|
|
|
|
|
+static bool qemu_graphic_console_is_multihead(QemuGraphicConsole *c)
|
|
{
|
|
{
|
|
QemuConsole *con;
|
|
QemuConsole *con;
|
|
- Object *obj;
|
|
|
|
uint32_t f = 0xffffffff;
|
|
uint32_t f = 0xffffffff;
|
|
uint32_t h;
|
|
uint32_t h;
|
|
|
|
|
|
QTAILQ_FOREACH(con, &consoles, next) {
|
|
QTAILQ_FOREACH(con, &consoles, next) {
|
|
|
|
+ QemuGraphicConsole *candidate;
|
|
|
|
+
|
|
if (!QEMU_IS_GRAPHIC_CONSOLE(con)) {
|
|
if (!QEMU_IS_GRAPHIC_CONSOLE(con)) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- obj = object_property_get_link(OBJECT(con),
|
|
|
|
- "device", &error_abort);
|
|
|
|
- if (DEVICE(obj) != dev) {
|
|
|
|
|
|
+
|
|
|
|
+ candidate = QEMU_GRAPHIC_CONSOLE(con);
|
|
|
|
+ if (candidate->device != c->device) {
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
|
|
|
|
- h = object_property_get_uint(OBJECT(con),
|
|
|
|
- "head", &error_abort);
|
|
|
|
|
|
+ h = candidate->head;
|
|
if (f == 0xffffffff) {
|
|
if (f == 0xffffffff) {
|
|
f = h;
|
|
f = h;
|
|
} else if (h != f) {
|
|
} else if (h != f) {
|
|
@@ -1471,7 +1471,7 @@ char *qemu_console_get_label(QemuConsole *con)
|
|
bool multihead;
|
|
bool multihead;
|
|
|
|
|
|
dev = DEVICE(c->device);
|
|
dev = DEVICE(c->device);
|
|
- multihead = qemu_console_is_multihead(dev);
|
|
|
|
|
|
+ multihead = qemu_graphic_console_is_multihead(c);
|
|
if (multihead) {
|
|
if (multihead) {
|
|
return g_strdup_printf("%s.%d", dev->id ?
|
|
return g_strdup_printf("%s.%d", dev->id ?
|
|
dev->id :
|
|
dev->id :
|