From patchwork Mon Sep 21 21:57:41 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Blake X-Patchwork-Id: 520636 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 8FC631401AD for ; Tue, 22 Sep 2015 08:20:10 +1000 (AEST) Received: from localhost ([::1]:34371 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ze9RQ-0000wD-IE for incoming@patchwork.ozlabs.org; Mon, 21 Sep 2015 18:20:08 -0400 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 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (Postfix) with ESMTPS id 9DACE2F90FB; Mon, 21 Sep 2015 21:58:24 +0000 (UTC) Received: from red.redhat.com (ovpn-113-166.phx2.redhat.com [10.3.113.166]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t8LLw4bl027229; Mon, 21 Sep 2015 17:58:24 -0400 From: Eric Blake To: qemu-devel@nongnu.org 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> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 209.132.183.28 Cc: marcandre.lureau@redhat.com, DirtY.iCE.hu@gmail.com, armbru@redhat.com, ehabkost@redhat.com Subject: [Qemu-devel] [PATCH v5 25/46] qapi: Plug leaks in test-qmp-input-visitor X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org 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)