mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-09-06 18:05:37 +00:00
![Marc-André Lureau](/assets/img/avatar_default.png)
Now that we can safely call QOBJECT() on QObject * as well as its subtypes, we can have macros qobject_ref() / qobject_unref() that work everywhere instead of having to use QINCREF() / QDECREF() for QObject and qobject_incref() / qobject_decref() for its subtypes. The replacement is mechanical, except I broke a long line, and added a cast in monitor_qmp_cleanup_req_queue_locked(). Unlike qobject_decref(), qobject_unref() doesn't accept void *. Note that the new macros evaluate their argument exactly once, thus no need to shout them. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20180419150145.24795-4-marcandre.lureau@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> [Rebased, semantic conflict resolved, commit message improved] Signed-off-by: Markus Armbruster <armbru@redhat.com>
48 lines
930 B
Plaintext
48 lines
930 B
Plaintext
// Use QDict macros where they make sense
|
|
@@
|
|
expression Obj, Key, E;
|
|
@@
|
|
(
|
|
- qobject_ref(QOBJECT(E));
|
|
+ qobject_ref(E);
|
|
|
|
|
- qobject_unref(QOBJECT(E));
|
|
+ qobject_unref(E);
|
|
|
|
|
- qdict_put_obj(Obj, Key, QOBJECT(E));
|
|
+ qdict_put(Obj, Key, E);
|
|
|
|
|
- qdict_put(Obj, Key, qnum_from_int(E));
|
|
+ qdict_put_int(Obj, Key, E);
|
|
|
|
|
- qdict_put(Obj, Key, qbool_from_bool(E));
|
|
+ qdict_put_bool(Obj, Key, E);
|
|
|
|
|
- qdict_put(Obj, Key, qstring_from_str(E));
|
|
+ qdict_put_str(Obj, Key, E);
|
|
|
|
|
- qdict_put(Obj, Key, qnull());
|
|
+ qdict_put_null(Obj, Key);
|
|
)
|
|
|
|
// Use QList macros where they make sense
|
|
@@
|
|
expression Obj, E;
|
|
@@
|
|
(
|
|
- qlist_append_obj(Obj, QOBJECT(E));
|
|
+ qlist_append(Obj, E);
|
|
|
|
|
- qlist_append(Obj, qnum_from_int(E));
|
|
+ qlist_append_int(Obj, E);
|
|
|
|
|
- qlist_append(Obj, qbool_from_bool(E));
|
|
+ qlist_append_bool(Obj, E);
|
|
|
|
|
- qlist_append(Obj, qstring_from_str(E));
|
|
+ qlist_append_str(Obj, E);
|
|
|
|
|
- qlist_append(Obj, qnull());
|
|
+ qlist_append_null(Obj);
|
|
)
|