From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60585) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ze96R-0007rk-GB for qemu-devel@nongnu.org; Mon, 21 Sep 2015 17:58:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ze96P-0000zJ-9H for qemu-devel@nongnu.org; Mon, 21 Sep 2015 17:58:27 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46792) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ze96O-0000z6-Vr for qemu-devel@nongnu.org; Mon, 21 Sep 2015 17:58:25 -0400 From: Eric Blake Date: Mon, 21 Sep 2015 15:57:41 -0600 Message-Id: <1442872682-6523-26-git-send-email-eblake@redhat.com> In-Reply-To: <1442872682-6523-1-git-send-email-eblake@redhat.com> References: <1442872682-6523-1-git-send-email-eblake@redhat.com> Subject: [Qemu-devel] [PATCH v5 25/46] qapi: Plug leaks in test-qmp-input-visitor List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: marcandre.lureau@redhat.com, DirtY.iCE.hu@gmail.com, armbru@redhat.com, ehabkost@redhat.com Make valgrind happy with the current state of the test, so that it is easier to see if future patches introduce new memory problems without being drowned in noise. Signed-off-by: Eric Blake --- tests/test-qmp-input-visitor.c | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/tests/test-qmp-input-visitor.c b/tests/test-qmp-input-visitor.c index 54be9b4..0c236f0 100644 --- a/tests/test-qmp-input-visitor.c +++ b/tests/test-qmp-input-visitor.c @@ -98,6 +98,7 @@ static void test_visitor_in_int(TestInputVisitorData *data, visit_type_int(v, &res, NULL, &err); g_assert(!err); g_assert_cmpint(res, ==, value); + visitor_input_teardown(data, NULL); } static void test_visitor_in_int_overflow(TestInputVisitorData *data, @@ -116,6 +117,7 @@ static void test_visitor_in_int_overflow(TestInputVisitorData *data, visit_type_int(v, &res, NULL, &err); g_assert(err); error_free(err); + visitor_input_teardown(data, NULL); } static void test_visitor_in_bool(TestInputVisitorData *data, @@ -130,6 +132,7 @@ static void test_visitor_in_bool(TestInputVisitorData *data, visit_type_bool(v, &res, NULL, &err); g_assert(!err); g_assert_cmpint(res, ==, true); + visitor_input_teardown(data, NULL); } static void test_visitor_in_number(TestInputVisitorData *data, @@ -144,6 +147,7 @@ static void test_visitor_in_number(TestInputVisitorData *data, visit_type_number(v, &res, NULL, &err); g_assert(!err); g_assert_cmpfloat(res, ==, value); + visitor_input_teardown(data, NULL); } static void test_visitor_in_string(TestInputVisitorData *data, @@ -160,6 +164,7 @@ static void test_visitor_in_string(TestInputVisitorData *data, g_assert_cmpstr(res, ==, value); g_free(res); + visitor_input_teardown(data, NULL); } static void test_visitor_in_enum(TestInputVisitorData *data, @@ -237,6 +242,7 @@ static void test_visitor_in_struct(TestInputVisitorData *data, g_free(p->string); g_free(p); + visitor_input_teardown(data, NULL); } static void check_and_free_str(char *str, const char *cmp) @@ -271,6 +277,7 @@ static void test_visitor_in_struct_nested(TestInputVisitorData *data, g_free(udp->dict1->dict2); g_free(udp->dict1); g_free(udp); + visitor_input_teardown(data, NULL); } static void test_visitor_in_list(TestInputVisitorData *data, @@ -296,6 +303,7 @@ static void test_visitor_in_list(TestInputVisitorData *data, } qapi_free_UserDefOneList(head); + visitor_input_teardown(data, NULL); } static void test_visitor_in_any(TestInputVisitorData *data, @@ -317,6 +325,7 @@ static void test_visitor_in_any(TestInputVisitorData *data, g_assert(qint); g_assert_cmpint(qint_get_int(qint), ==, -42); qobject_decref(res); + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "{ 'integer': -42, 'boolean': true, 'string': 'foo' }"); visit_type_any(v, &res, NULL, &err); @@ -339,6 +348,7 @@ static void test_visitor_in_any(TestInputVisitorData *data, g_assert(qstring); g_assert_cmpstr(qstring_get_str(qstring), ==, "foo"); qobject_decref(res); + visitor_input_teardown(data, NULL); } static void test_visitor_in_union_flat(TestInputVisitorData *data, @@ -361,6 +371,7 @@ static void test_visitor_in_union_flat(TestInputVisitorData *data, g_assert_cmpint(tmp->integer, ==, 41); g_assert_cmpint(tmp->value1->boolean, ==, true); qapi_free_UserDefFlatUnion(tmp); + visitor_input_teardown(data, NULL); } static void test_visitor_in_alternate(TestInputVisitorData *data, @@ -371,28 +382,28 @@ static void test_visitor_in_alternate(TestInputVisitorData *data, UserDefAlternate *tmp = NULL; v = visitor_input_test_init(data, "42"); - visit_type_UserDefAlternate(v, &tmp, NULL, &error_abort); g_assert_cmpint(tmp->type, ==, QTYPE_QINT); g_assert_cmpint(tmp->i, ==, 42); qapi_free_UserDefAlternate(tmp); tmp = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "'string'"); - visit_type_UserDefAlternate(v, &tmp, NULL, &error_abort); g_assert_cmpint(tmp->type, ==, QTYPE_QSTRING); g_assert_cmpstr(tmp->s, ==, "string"); qapi_free_UserDefAlternate(tmp); tmp = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "false"); - visit_type_UserDefAlternate(v, &tmp, NULL, &err); g_assert(err); error_free(err); err = NULL; qapi_free_UserDefAlternate(tmp); + visitor_input_teardown(data, NULL); } static void test_visitor_in_alternate_number(TestInputVisitorData *data, @@ -414,6 +425,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert(err); qapi_free_AltOne(one); one = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42"); visit_type_AltTwo(v, &two, NULL, &error_abort); @@ -421,6 +433,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpfloat(two->n, ==, 42.0); qapi_free_AltTwo(two); one = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42"); visit_type_AltThree(v, &three, NULL, &error_abort); @@ -428,6 +441,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpfloat(three->n, ==, 42.0); qapi_free_AltThree(three); one = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42"); visit_type_AltFour(v, &four, NULL, &error_abort); @@ -435,6 +449,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpint(four->i, ==, 42); qapi_free_AltFour(four); one = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42"); visit_type_AltFive(v, &five, NULL, &error_abort); @@ -442,6 +457,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpint(five->i, ==, 42); qapi_free_AltFive(five); one = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42"); visit_type_AltSix(v, &six, NULL, &error_abort); @@ -449,6 +465,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpint(six->i, ==, 42); qapi_free_AltSix(six); one = NULL; + visitor_input_teardown(data, NULL); /* Parsing a double */ @@ -459,6 +476,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, err = NULL; qapi_free_AltOne(one); one = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42.5"); visit_type_AltTwo(v, &two, NULL, &error_abort); @@ -466,6 +484,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpfloat(two->n, ==, 42.5); qapi_free_AltTwo(two); two = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42.5"); visit_type_AltThree(v, &three, NULL, &error_abort); @@ -473,6 +492,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpfloat(three->n, ==, 42.5); qapi_free_AltThree(three); three = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42.5"); visit_type_AltFour(v, &four, NULL, &err); @@ -481,6 +501,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, err = NULL; qapi_free_AltFour(four); four = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42.5"); visit_type_AltFive(v, &five, NULL, &error_abort); @@ -488,6 +509,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpfloat(five->n, ==, 42.5); qapi_free_AltFive(five); five = NULL; + visitor_input_teardown(data, NULL); v = visitor_input_test_init(data, "42.5"); visit_type_AltSix(v, &six, NULL, &error_abort); @@ -495,6 +517,7 @@ static void test_visitor_in_alternate_number(TestInputVisitorData *data, g_assert_cmpint(six->n, ==, 42.5); qapi_free_AltSix(six); six = NULL; + visitor_input_teardown(data, NULL); } static void test_native_list_integer_helper(TestInputVisitorData *data, @@ -595,6 +618,7 @@ static void test_native_list_integer_helper(TestInputVisitorData *data, g_string_free(gstr_union, true); g_string_free(gstr_list, true); qapi_free_UserDefNativeListUnion(cvalue); + visitor_input_teardown(data, NULL); } static void test_visitor_in_native_list_int(TestInputVisitorData *data, @@ -694,6 +718,7 @@ static void test_visitor_in_native_list_bool(TestInputVisitorData *data, g_string_free(gstr_union, true); g_string_free(gstr_list, true); qapi_free_UserDefNativeListUnion(cvalue); + visitor_input_teardown(data, NULL); } static void test_visitor_in_native_list_string(TestInputVisitorData *data, @@ -731,6 +756,7 @@ static void test_visitor_in_native_list_string(TestInputVisitorData *data, g_string_free(gstr_union, true); g_string_free(gstr_list, true); qapi_free_UserDefNativeListUnion(cvalue); + visitor_input_teardown(data, NULL); } #define DOUBLE_STR_MAX 16 @@ -776,6 +802,7 @@ static void test_visitor_in_native_list_number(TestInputVisitorData *data, g_string_free(gstr_union, true); g_string_free(gstr_list, true); qapi_free_UserDefNativeListUnion(cvalue); + visitor_input_teardown(data, NULL); } static void input_visitor_test_add(const char *testpath, @@ -804,6 +831,7 @@ static void test_visitor_in_errors(TestInputVisitorData *data, error_free(err); g_free(p->string); g_free(p); + visitor_input_teardown(data, NULL); } int main(int argc, char **argv) -- 2.4.3