aboutsummaryrefslogtreecommitdiff
path: root/ui
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2023-09-05 23:18:08 +0400
committerMarc-André Lureau <marcandre.lureau@redhat.com>2023-11-07 14:04:25 +0400
commit1bec1cc0da497e55c16e2a7b50f94cdb2a02197f (patch)
tree1da84c3a57cd2665e4d3c5d9e8fe2815054182d8 /ui
parent2aeaa4b2000d95139d5dfae8ca5061c1b19e749e (diff)
ui/console: allow to override the default VC
If a display is backed by a specialized VC, allow to override the default "vc:80Cx24C". As suggested by Paolo, if the display doesn't implement a VC (get_vc() returns NULL), use a fallback that will use a muxed console on stdio. This changes the behaviour of "qemu -display none", to create a muxed serial/monitor by default (on TTY & not daemonized). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'ui')
-rw-r--r--ui/console.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/ui/console.c b/ui/console.c
index 8ee66d10c5..a758ed62ad 100644
--- a/ui/console.c
+++ b/ui/console.c
@@ -1675,6 +1675,20 @@ void qemu_display_init(DisplayState *ds, DisplayOptions *opts)
dpys[opts->type]->init(ds, opts);
}
+const char *qemu_display_get_vc(DisplayOptions *opts)
+{
+ assert(opts->type < DISPLAY_TYPE__MAX);
+ if (opts->type == DISPLAY_TYPE_NONE) {
+ return NULL;
+ }
+ assert(dpys[opts->type] != NULL);
+ if (dpys[opts->type]->vc) {
+ return dpys[opts->type]->vc;
+ } else {
+ return "vc:80Cx24C";
+ }
+}
+
void qemu_display_help(void)
{
int idx;