mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-06 09:13:55 -06:00
qom: Use returned bool to check for failure, Coccinelle part
The previous commit enables conversion of foo(..., &err); if (err) { ... } to if (!foo(..., errp)) { ... } for QOM functions that now return true / false on success / error. Coccinelle script: @@ identifier fun = { object_apply_global_props, object_initialize_child_with_props, object_initialize_child_with_propsv, object_property_get, object_property_get_bool, object_property_parse, object_property_set, object_property_set_bool, object_property_set_int, object_property_set_link, object_property_set_qobject, object_property_set_str, object_property_set_uint, object_set_props, object_set_propv, user_creatable_add_dict, user_creatable_complete, user_creatable_del }; expression list args, args2; typedef Error; Error *err; @@ - fun(args, &err, args2); - if (err) + if (!fun(args, &err, args2)) { ... } Fails to convert hw/arm/armsse.c, because Coccinelle gets confused by ARMSSE being used both as typedef and function-like macro there. Convert manually. Line breaks tidied up manually. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-Id: <20200707160613.848843-29-armbru@redhat.com>
This commit is contained in:
parent
6fd5bef10b
commit
778a2dc592
28 changed files with 96 additions and 142 deletions
|
@ -935,22 +935,21 @@ static void xen_block_device_create(XenBackendInstance *backend,
|
|||
xendev = XEN_DEVICE(qdev_new(type));
|
||||
blockdev = XEN_BLOCK_DEVICE(xendev);
|
||||
|
||||
object_property_set_str(OBJECT(xendev), "vdev", vdev, &local_err);
|
||||
if (local_err) {
|
||||
if (!object_property_set_str(OBJECT(xendev), "vdev", vdev,
|
||||
&local_err)) {
|
||||
error_propagate_prepend(errp, local_err, "failed to set 'vdev': ");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
object_property_set_str(OBJECT(xendev), "drive",
|
||||
xen_block_drive_get_node_name(drive), &local_err);
|
||||
if (local_err) {
|
||||
if (!object_property_set_str(OBJECT(xendev), "drive",
|
||||
xen_block_drive_get_node_name(drive),
|
||||
&local_err)) {
|
||||
error_propagate_prepend(errp, local_err, "failed to set 'drive': ");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
object_property_set_str(OBJECT(xendev), "iothread", iothread->id,
|
||||
&local_err);
|
||||
if (local_err) {
|
||||
if (!object_property_set_str(OBJECT(xendev), "iothread", iothread->id,
|
||||
&local_err)) {
|
||||
error_propagate_prepend(errp, local_err,
|
||||
"failed to set 'iothread': ");
|
||||
goto fail;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue