summaryrefslogtreecommitdiffstats
path: root/qapi/qapi-visit-core.c
diff options
context:
space:
mode:
authorMarkus Armbruster2020-04-24 10:43:31 +0200
committerMarkus Armbruster2020-04-30 07:26:09 +0200
commit777d20cfa5735de298f378e9b90f0cd1caafdc2d (patch)
treecafdd57715a626e270530f85b7bde152d571edc6 /qapi/qapi-visit-core.c
parentqapi: Fix Visitor contract for start_alternate() (diff)
downloadqemu-777d20cfa5735de298f378e9b90f0cd1caafdc2d.tar.gz
qemu-777d20cfa5735de298f378e9b90f0cd1caafdc2d.tar.xz
qemu-777d20cfa5735de298f378e9b90f0cd1caafdc2d.zip
qapi: Assert output visitors see only valid enum values
output_type_enum() fails when *obj is not a valid value of the enum type. Should not happen. Drop the check, along with its unit tests. This unmasks qapi_enum_lookup()'s assertion. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20200424084338.26803-9-armbru@redhat.com> [Commit message tweaked]
Diffstat (limited to 'qapi/qapi-visit-core.c')
-rw-r--r--qapi/qapi-visit-core.c9
1 files changed, 0 insertions, 9 deletions
diff --git a/qapi/qapi-visit-core.c b/qapi/qapi-visit-core.c
index d4aac206cf..80ca83bcb9 100644
--- a/qapi/qapi-visit-core.c
+++ b/qapi/qapi-visit-core.c
@@ -341,15 +341,6 @@ static void output_type_enum(Visitor *v, const char *name, int *obj,
int value = *obj;
char *enum_str;
- /*
- * TODO why is this an error, not an assertion? If assertion:
- * delete, and rely on qapi_enum_lookup()
- */
- if (value < 0 || value >= lookup->size) {
- error_setg(errp, QERR_INVALID_PARAMETER, name ? name : "null");
- return;
- }
-
enum_str = (char *)qapi_enum_lookup(lookup, value);
visit_type_str(v, name, &enum_str, errp);
}