Message ID | 20170911172022.4738-8-eblake@redhat.com |
---|---|
State | New |
Headers | show |
Series | Preliminary libqtest cleanups | expand |
On 11.09.2017 19:19, Eric Blake wrote: > There was only one caller; it's easier to inline things. (It > trades one forward declaration for two others, but it's not > worth the additional churn of topological sorting, even though > that would be possible.) > > Signed-off-by: Eric Blake <eblake@redhat.com> > > --- > v7: Drop the topological sorting > --- > tests/libqtest.c | 26 +++++++++----------------- > 1 file changed, 9 insertions(+), 17 deletions(-) > > diff --git a/tests/libqtest.c b/tests/libqtest.c > index 95d4159b38..1710d63276 100644 > --- a/tests/libqtest.c > +++ b/tests/libqtest.c > @@ -49,7 +49,9 @@ static struct sigaction sigact_old; > g_assert_cmpint(ret, !=, -1); \ > } while (0) > > -static int qtest_query_target_endianness(QTestState *s); > +static void qtest_sendf(QTestState *s, const char *fmt, ...) > + GCC_FMT_ATTR(2, 3); > +static gchar **qtest_rsp(QTestState *s, int expected_args); > > static int init_socket(const char *socket_path) > { > @@ -158,6 +160,7 @@ QTestState *qtest_init_without_qmp_handshake(const char *extra_args) > gchar *qmp_socket_path; > gchar *command; > const char *qemu_binary; > + gchar **args; > > qemu_binary = getenv("QTEST_QEMU_BINARY"); > if (!qemu_binary) { > @@ -221,8 +224,11 @@ QTestState *qtest_init_without_qmp_handshake(const char *extra_args) > } > > /* ask endianness of the target */ > - > - s->big_endian = qtest_query_target_endianness(s); > + qtest_sendf(s, "endianness\n"); > + args = qtest_rsp(s, 1); > + g_assert(strcmp(args[1], "big") == 0 || strcmp(args[1], "little") == 0); > + s->big_endian = strcmp(args[1], "big") == 0; > + g_strfreev(args); > > return s; > } > @@ -367,20 +373,6 @@ redo: > return words; > } > > -static int qtest_query_target_endianness(QTestState *s) > -{ > - gchar **args; > - int big_endian; > - > - qtest_sendf(s, "endianness\n"); > - args = qtest_rsp(s, 1); > - g_assert(strcmp(args[1], "big") == 0 || strcmp(args[1], "little") == 0); > - big_endian = strcmp(args[1], "big") == 0; > - g_strfreev(args); > - > - return big_endian; > -} > - > typedef struct { > JSONMessageParser parser; > QDict *response; Looking at this patch again, I'm not sure anymore whether this is really worth the effort. Keeping code that belongs together in a separate function also makes sense ... Not sure, but I'd maybe rather drop this patch. But in case you want to keep it: Reviewed-by: Thomas Huth <thuth@redhat.com>
diff --git a/tests/libqtest.c b/tests/libqtest.c index 95d4159b38..1710d63276 100644 --- a/tests/libqtest.c +++ b/tests/libqtest.c @@ -49,7 +49,9 @@ static struct sigaction sigact_old; g_assert_cmpint(ret, !=, -1); \ } while (0) -static int qtest_query_target_endianness(QTestState *s); +static void qtest_sendf(QTestState *s, const char *fmt, ...) + GCC_FMT_ATTR(2, 3); +static gchar **qtest_rsp(QTestState *s, int expected_args); static int init_socket(const char *socket_path) { @@ -158,6 +160,7 @@ QTestState *qtest_init_without_qmp_handshake(const char *extra_args) gchar *qmp_socket_path; gchar *command; const char *qemu_binary; + gchar **args; qemu_binary = getenv("QTEST_QEMU_BINARY"); if (!qemu_binary) { @@ -221,8 +224,11 @@ QTestState *qtest_init_without_qmp_handshake(const char *extra_args) } /* ask endianness of the target */ - - s->big_endian = qtest_query_target_endianness(s); + qtest_sendf(s, "endianness\n"); + args = qtest_rsp(s, 1); + g_assert(strcmp(args[1], "big") == 0 || strcmp(args[1], "little") == 0); + s->big_endian = strcmp(args[1], "big") == 0; + g_strfreev(args); return s; } @@ -367,20 +373,6 @@ redo: return words; } -static int qtest_query_target_endianness(QTestState *s) -{ - gchar **args; - int big_endian; - - qtest_sendf(s, "endianness\n"); - args = qtest_rsp(s, 1); - g_assert(strcmp(args[1], "big") == 0 || strcmp(args[1], "little") == 0); - big_endian = strcmp(args[1], "big") == 0; - g_strfreev(args); - - return big_endian; -} - typedef struct { JSONMessageParser parser; QDict *response;
There was only one caller; it's easier to inline things. (It trades one forward declaration for two others, but it's not worth the additional churn of topological sorting, even though that would be possible.) Signed-off-by: Eric Blake <eblake@redhat.com> --- v7: Drop the topological sorting --- tests/libqtest.c | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-)