mirror of https://github.com/xemu-project/xemu.git
chardev: Drop useless ChardevDummy type
Commit d0d7708b
made ChardevDummy be an empty wrapper type around
ChardevCommon. But there is no technical reason for this indirection,
so simplify the code by directly using the base type.
Also change the fallback assignment to assign u.null rather than
u.data, since a future patch will remove the data member of the C
struct generated for QAPI unions.
Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Daniel P. Berrange <berrange@redhat.com>
Message-Id: <1457106160-23614-1-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
parent
10f759079e
commit
b1918fbb1c
|
@ -567,7 +567,7 @@ static CharDriverState *chr_baum_init(const char *id,
|
|||
ChardevReturn *ret,
|
||||
Error **errp)
|
||||
{
|
||||
ChardevCommon *common = qapi_ChardevDummy_base(backend->u.braille);
|
||||
ChardevCommon *common = backend->u.braille;
|
||||
BaumDriverState *baum;
|
||||
CharDriverState *chr;
|
||||
brlapi_handle_t *handle;
|
||||
|
|
|
@ -68,7 +68,7 @@ static CharDriverState *qemu_chr_open_msmouse(const char *id,
|
|||
ChardevReturn *ret,
|
||||
Error **errp)
|
||||
{
|
||||
ChardevCommon *common = qapi_ChardevDummy_base(backend->u.msmouse);
|
||||
ChardevCommon *common = backend->u.msmouse;
|
||||
CharDriverState *chr;
|
||||
|
||||
chr = qemu_chr_alloc(common, errp);
|
||||
|
|
|
@ -3323,23 +3323,20 @@
|
|||
#
|
||||
# Since: 1.4 (testdev since 2.2)
|
||||
##
|
||||
{ 'struct': 'ChardevDummy', 'data': { },
|
||||
'base': 'ChardevCommon' }
|
||||
|
||||
{ 'union': 'ChardevBackend', 'data': { 'file' : 'ChardevFile',
|
||||
'serial' : 'ChardevHostdev',
|
||||
'parallel': 'ChardevHostdev',
|
||||
'pipe' : 'ChardevHostdev',
|
||||
'socket' : 'ChardevSocket',
|
||||
'udp' : 'ChardevUdp',
|
||||
'pty' : 'ChardevDummy',
|
||||
'null' : 'ChardevDummy',
|
||||
'pty' : 'ChardevCommon',
|
||||
'null' : 'ChardevCommon',
|
||||
'mux' : 'ChardevMux',
|
||||
'msmouse': 'ChardevDummy',
|
||||
'braille': 'ChardevDummy',
|
||||
'testdev': 'ChardevDummy',
|
||||
'msmouse': 'ChardevCommon',
|
||||
'braille': 'ChardevCommon',
|
||||
'testdev': 'ChardevCommon',
|
||||
'stdio' : 'ChardevStdio',
|
||||
'console': 'ChardevDummy',
|
||||
'console': 'ChardevCommon',
|
||||
'spicevmc' : 'ChardevSpiceChannel',
|
||||
'spiceport' : 'ChardevSpicePort',
|
||||
'vc' : 'ChardevVC',
|
||||
|
|
|
@ -420,7 +420,7 @@ static CharDriverState *qemu_chr_open_null(const char *id,
|
|||
Error **errp)
|
||||
{
|
||||
CharDriverState *chr;
|
||||
ChardevCommon *common = qapi_ChardevDummy_base(backend->u.null);
|
||||
ChardevCommon *common = backend->u.null;
|
||||
|
||||
chr = qemu_chr_alloc(common, errp);
|
||||
if (!chr) {
|
||||
|
@ -1366,7 +1366,7 @@ static CharDriverState *qemu_chr_open_pty(const char *id,
|
|||
PtyCharDriver *s;
|
||||
int master_fd, slave_fd;
|
||||
char pty_name[PATH_MAX];
|
||||
ChardevCommon *common = qapi_ChardevDummy_base(backend->u.pty);
|
||||
ChardevCommon *common = backend->u.pty;
|
||||
|
||||
master_fd = qemu_openpty_raw(&slave_fd, pty_name);
|
||||
if (master_fd < 0) {
|
||||
|
@ -2183,7 +2183,7 @@ static CharDriverState *qemu_chr_open_win_con(const char *id,
|
|||
ChardevReturn *ret,
|
||||
Error **errp)
|
||||
{
|
||||
ChardevCommon *common = qapi_ChardevDummy_base(backend->u.console);
|
||||
ChardevCommon *common = backend->u.console;
|
||||
return qemu_chr_open_win_file(GetStdHandle(STD_OUTPUT_HANDLE),
|
||||
common, errp);
|
||||
}
|
||||
|
@ -3817,7 +3817,7 @@ CharDriverState *qemu_chr_new_from_opts(QemuOpts *opts,
|
|||
} else {
|
||||
ChardevCommon *cc = g_new0(ChardevCommon, 1);
|
||||
qemu_chr_parse_common(opts, cc);
|
||||
backend->u.data = cc;
|
||||
backend->u.null = cc; /* Any ChardevCommon member would work */
|
||||
}
|
||||
|
||||
ret = qmp_chardev_add(bid ? bid : id, backend, errp);
|
||||
|
|
Loading…
Reference in New Issue