From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42882) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dkqLG-000136-BF for qemu-devel@nongnu.org; Thu, 24 Aug 2017 07:30:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dkqLF-0007Sw-JK for qemu-devel@nongnu.org; Thu, 24 Aug 2017 07:30:30 -0400 Received: from mail-ua0-x243.google.com ([2607:f8b0:400c:c08::243]:35777) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dkqLF-0007SK-Eo for qemu-devel@nongnu.org; Thu, 24 Aug 2017 07:30:29 -0400 Received: by mail-ua0-x243.google.com with SMTP id c3so960231uae.2 for ; Thu, 24 Aug 2017 04:30:29 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <1503564371-26090-11-git-send-email-armbru@redhat.com> References: <1503564371-26090-1-git-send-email-armbru@redhat.com> <1503564371-26090-11-git-send-email-armbru@redhat.com> From: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= Date: Thu, 24 Aug 2017 13:30:28 +0200 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 10/16] qapi: Use qapi_enum_parse() in input_type_enum() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Markus Armbruster Cc: QEMU , Michael Roth On Thu, Aug 24, 2017 at 10:46 AM, Markus Armbruster wro= te: > Signed-off-by: Markus Armbruster Reviewed-by: Marc-Andr=C3=A9 Lureau > --- > qapi/qapi-visit-core.c | 13 ++++--------- > 1 file changed, 4 insertions(+), 9 deletions(-) > > diff --git a/qapi/qapi-visit-core.c b/qapi/qapi-visit-core.c > index ed6d2af..ec83ff6 100644 > --- a/qapi/qapi-visit-core.c > +++ b/qapi/qapi-visit-core.c > @@ -14,6 +14,7 @@ > > #include "qemu/osdep.h" > #include "qapi/error.h" > +#include "qapi/util.h" > #include "qemu-common.h" > #include "qapi/qmp/qobject.h" > #include "qapi/qmp/qerror.h" > @@ -353,7 +354,7 @@ static void input_type_enum(Visitor *v, const char *n= ame, int *obj, > const char *const strings[], Error **errp) > { > Error *local_err =3D NULL; > - int64_t value =3D 0; > + int64_t value; > char *enum_str; > > visit_type_str(v, name, &enum_str, &local_err); > @@ -362,14 +363,8 @@ static void input_type_enum(Visitor *v, const char *= name, int *obj, > return; > } > > - while (strings[value] !=3D NULL) { > - if (strcmp(strings[value], enum_str) =3D=3D 0) { > - break; > - } > - value++; > - } > - > - if (strings[value] =3D=3D NULL) { > + value =3D qapi_enum_parse(strings, enum_str, -1, NULL); > + if (value < 0) { > error_setg(errp, QERR_INVALID_PARAMETER, enum_str); > g_free(enum_str); > return; > -- > 2.7.5 > > --=20 Marc-Andr=C3=A9 Lureau