summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/qapi-commands.py16
-rw-r--r--scripts/qapi-event.py2
-rw-r--r--scripts/qapi-types.py6
3 files changed, 9 insertions, 15 deletions
diff --git a/scripts/qapi-commands.py b/scripts/qapi-commands.py
index 971dc4ea8e..77ecd47071 100644
--- a/scripts/qapi-commands.py
+++ b/scripts/qapi-commands.py
@@ -62,7 +62,6 @@ static void qmp_marshal_output_%(c_name)s(%(c_type)s ret_in, QObject **ret_out,
{
Error *err = NULL;
QmpOutputVisitor *qov = qmp_output_visitor_new();
- QapiDeallocVisitor *qdv;
Visitor *v;
v = qmp_output_get_visitor(qov);
@@ -74,11 +73,10 @@ static void qmp_marshal_output_%(c_name)s(%(c_type)s ret_in, QObject **ret_out,
out:
error_propagate(errp, err);
- qmp_output_visitor_cleanup(qov);
- qdv = qapi_dealloc_visitor_new();
- v = qapi_dealloc_get_visitor(qdv);
+ visit_free(v);
+ v = qapi_dealloc_visitor_new();
visit_type_%(c_name)s(v, "unused", &ret_in, NULL);
- qapi_dealloc_visitor_cleanup(qdv);
+ visit_free(v);
}
''',
c_type=ret_type.c_type(), c_name=ret_type.c_name())
@@ -116,7 +114,6 @@ def gen_marshal(name, arg_type, ret_type):
if arg_type and arg_type.members:
ret += mcgen('''
QmpInputVisitor *qiv = qmp_input_visitor_new(QOBJECT(args), true);
- QapiDeallocVisitor *qdv;
Visitor *v;
%(c_name)s arg = {0};
@@ -155,13 +152,12 @@ out:
''')
if arg_type and arg_type.members:
ret += mcgen('''
- qmp_input_visitor_cleanup(qiv);
- qdv = qapi_dealloc_visitor_new();
- v = qapi_dealloc_get_visitor(qdv);
+ visit_free(v);
+ v = qapi_dealloc_visitor_new();
visit_start_struct(v, NULL, NULL, 0, NULL);
visit_type_%(c_name)s_members(v, &arg, NULL);
visit_end_struct(v, NULL);
- qapi_dealloc_visitor_cleanup(qdv);
+ visit_free(v);
''',
c_name=arg_type.c_name())
diff --git a/scripts/qapi-event.py b/scripts/qapi-event.py
index 084c40a100..909e8d6b8f 100644
--- a/scripts/qapi-event.py
+++ b/scripts/qapi-event.py
@@ -119,7 +119,7 @@ def gen_event_send(name, arg_type):
if arg_type and arg_type.members:
ret += mcgen('''
out:
- qmp_output_visitor_cleanup(qov);
+ visit_free(v);
''')
ret += mcgen('''
error_propagate(errp, err);
diff --git a/scripts/qapi-types.py b/scripts/qapi-types.py
index 437cf6c8e3..5ace2cf065 100644
--- a/scripts/qapi-types.py
+++ b/scripts/qapi-types.py
@@ -150,17 +150,15 @@ def gen_type_cleanup(name):
void qapi_free_%(c_name)s(%(c_name)s *obj)
{
- QapiDeallocVisitor *qdv;
Visitor *v;
if (!obj) {
return;
}
- qdv = qapi_dealloc_visitor_new();
- v = qapi_dealloc_get_visitor(qdv);
+ v = qapi_dealloc_visitor_new();
visit_type_%(c_name)s(v, NULL, &obj, NULL);
- qapi_dealloc_visitor_cleanup(qdv);
+ visit_free(v);
}
''',
c_name=c_name(name))