aboutsummaryrefslogtreecommitdiff
path: root/qobject
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2022-03-23 19:57:20 +0400
committerPaolo Bonzini <pbonzini@redhat.com>2022-04-06 10:50:38 +0200
commitd709bbf3b17f43c91e82c3807a39f2c349d27934 (patch)
tree30e0ae475c7716d412000b7c2403092363a8afaf /qobject
parent7773e13fa729bbd2b106121b6c63b11a46c7d0c4 (diff)
include/qapi: add g_autoptr support for qobject types
Need wrappers for qobject_unref() calls, which is a macro. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220323155743.1585078-10-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'qobject')
-rw-r--r--qobject/qbool.c5
-rw-r--r--qobject/qdict.c5
-rw-r--r--qobject/qlist.c5
-rw-r--r--qobject/qnull.c5
-rw-r--r--qobject/qnum.c5
-rw-r--r--qobject/qstring.c5
6 files changed, 30 insertions, 0 deletions
diff --git a/qobject/qbool.c b/qobject/qbool.c
index 16a600abb9..c7049c0c50 100644
--- a/qobject/qbool.c
+++ b/qobject/qbool.c
@@ -56,3 +56,8 @@ void qbool_destroy_obj(QObject *obj)
assert(obj != NULL);
g_free(qobject_to(QBool, obj));
}
+
+void qbool_unref(QBool *q)
+{
+ qobject_unref(q);
+}
diff --git a/qobject/qdict.c b/qobject/qdict.c
index 0216ca7ac1..8faff230d3 100644
--- a/qobject/qdict.c
+++ b/qobject/qdict.c
@@ -442,3 +442,8 @@ void qdict_destroy_obj(QObject *obj)
g_free(qdict);
}
+
+void qdict_unref(QDict *q)
+{
+ qobject_unref(q);
+}
diff --git a/qobject/qlist.c b/qobject/qlist.c
index 60562a1f52..356ad946b0 100644
--- a/qobject/qlist.c
+++ b/qobject/qlist.c
@@ -182,3 +182,8 @@ void qlist_destroy_obj(QObject *obj)
g_free(qlist);
}
+
+void qlist_unref(QList *q)
+{
+ qobject_unref(q);
+}
diff --git a/qobject/qnull.c b/qobject/qnull.c
index b26b368219..445a5db7f3 100644
--- a/qobject/qnull.c
+++ b/qobject/qnull.c
@@ -29,3 +29,8 @@ bool qnull_is_equal(const QObject *x, const QObject *y)
{
return true;
}
+
+void qnull_unref(QNull *q)
+{
+ qobject_unref(q);
+}
diff --git a/qobject/qnum.c b/qobject/qnum.c
index 5dd66938dd..2bbeaedc7b 100644
--- a/qobject/qnum.c
+++ b/qobject/qnum.c
@@ -239,3 +239,8 @@ void qnum_destroy_obj(QObject *obj)
assert(obj != NULL);
g_free(qobject_to(QNum, obj));
}
+
+void qnum_unref(QNum *q)
+{
+ qobject_unref(q);
+}
diff --git a/qobject/qstring.c b/qobject/qstring.c
index b4613899b9..794f8c9357 100644
--- a/qobject/qstring.c
+++ b/qobject/qstring.c
@@ -100,3 +100,8 @@ void qstring_destroy_obj(QObject *obj)
g_free((char *)qs->string);
g_free(qs);
}
+
+void qstring_unref(QString *q)
+{
+ qobject_unref(q);
+}