diff options
author | Markus Armbruster <armbru@redhat.com> | 2022-11-04 17:07:08 +0100 |
---|---|---|
committer | Markus Armbruster <armbru@redhat.com> | 2022-12-14 20:05:07 +0100 |
commit | 238e9202a25bbac9dfc3cfc2c87a3c095cb2268c (patch) | |
tree | 14a799229d51e92126f9e77a5b1adb4f185beaa9 /blockdev.c | |
parent | ced2939685bb306431c2ffb1620460dfb6093a1a (diff) | |
download | qemu-238e9202a25bbac9dfc3cfc2c87a3c095cb2268c.zip qemu-238e9202a25bbac9dfc3cfc2c87a3c095cb2268c.tar.gz qemu-238e9202a25bbac9dfc3cfc2c87a3c095cb2268c.tar.bz2 |
qapi transaction: Elide redundant has_FOO in generated C
The has_FOO for pointer-valued FOO are redundant, except for arrays.
They are also a nuisance to work with. Recent commit "qapi: Start to
elide redundant has_FOO in generated C" provided the means to elide
them step by step. This is the step for qapi/transaction.json.
Said commit explains the transformation in more detail. The invariant
violations mentioned there do not occur here.
In qmp_transaction(), we can't just drop parameter @has_props, since
it's used to track whether @props needs to be freed. Replace it by a
local variable.
Cc: Kevin Wolf <kwolf@redhat.com>
Cc: Hanna Reitz <hreitz@redhat.com>
Cc: qemu-block@nongnu.org
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20221104160712.3005652-27-armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'blockdev.c')
-rw-r--r-- | blockdev.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -1048,7 +1048,7 @@ static void blockdev_do_action(TransactionAction *action, Error **errp) list.value = action; list.next = NULL; - qmp_transaction(&list, false, NULL, errp); + qmp_transaction(&list, NULL, errp); } void qmp_blockdev_snapshot_sync(const char *device, const char *node_name, @@ -2289,11 +2289,11 @@ static TransactionProperties *get_transaction_properties( * Always run under BQL. */ void qmp_transaction(TransactionActionList *dev_list, - bool has_props, struct TransactionProperties *props, Error **errp) { TransactionActionList *dev_entry = dev_list; + bool has_props = !!props; JobTxn *block_job_txn = NULL; BlkActionState *state, *next; Error *local_err = NULL; |