diff options
| author | Eric Blake <eblake@redhat.com> | 2015-10-26 16:34:58 -0600 |
|---|---|---|
| committer | Markus Armbruster <armbru@redhat.com> | 2015-11-02 08:30:28 +0100 |
| commit | 568c73a4783cd981e9aa6de4f15dcda7829643ad (patch) | |
| tree | f376af2edf7fea37fcc10c6bcaba16ce4daa4770 /hmp.c | |
| parent | 130257dc443574a9da91dc293665be2cfc40245a (diff) | |
| download | focaccia-qemu-568c73a4783cd981e9aa6de4f15dcda7829643ad.tar.gz focaccia-qemu-568c73a4783cd981e9aa6de4f15dcda7829643ad.zip | |
input: Convert to new qapi union layout
We have two issues with our qapi union layout: 1) Even though the QMP wire format spells the tag 'type', the C code spells it 'kind', requiring some hacks in the generator. 2) The C struct uses an anonymous union, which places all tag values in the same namespace as all non-variant members. This leads to spurious collisions if a tag value matches a non-variant member's name. Make the conversion to the new layout for input-related code. Signed-off-by: Eric Blake <eblake@redhat.com> Message-Id: <1445898903-12082-20-git-send-email-eblake@redhat.com> [Commit message tweaked slightly] Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'hmp.c')
| -rw-r--r-- | hmp.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/hmp.c b/hmp.c index 88fd804a9e..cc4946d6ee 100644 --- a/hmp.c +++ b/hmp.c @@ -1735,15 +1735,15 @@ void hmp_sendkey(Monitor *mon, const QDict *qdict) if (*endp != '\0') { goto err_out; } - keylist->value->kind = KEY_VALUE_KIND_NUMBER; - keylist->value->number = value; + keylist->value->type = KEY_VALUE_KIND_NUMBER; + keylist->value->u.number = value; } else { int idx = index_from_key(keyname_buf); if (idx == Q_KEY_CODE_MAX) { goto err_out; } - keylist->value->kind = KEY_VALUE_KIND_QCODE; - keylist->value->qcode = idx; + keylist->value->type = KEY_VALUE_KIND_QCODE; + keylist->value->u.qcode = idx; } if (!separator) { |