qdev: Use returned bool to check for failure, Coccinelle part

The previous commit enables conversion of

    qdev_prop_set_drive_err(..., &err);
    if (err) {
    ...
    }

to

    if (!qdev_prop_set_drive_err(..., errp)) {
    ...
    }

Coccinelle script:

    @@
    identifier fun = qdev_prop_set_drive_err;
    expression list args;
    typedef Error;
    Error *err;
    @@
    -    fun(args, &err);
    -    if (err)
    +    if (!fun(args, &err))
         {
             ...
         }

One line break tidied up manually.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20200707160613.848843-33-armbru@redhat.com>
This commit is contained in:
Markus Armbruster 2020-07-07 18:06:00 +02:00
parent 73ac1aac39
commit 0c0e618d23
3 changed files with 4 additions and 7 deletions

View File

@ -277,8 +277,7 @@ SCSIDevice *scsi_bus_legacy_add_drive(SCSIBus *bus, BlockBackend *blk,
if (serial && object_property_find(OBJECT(dev), "serial", NULL)) {
qdev_prop_set_string(dev, "serial", serial);
}
qdev_prop_set_drive_err(dev, "drive", blk, &err);
if (err) {
if (!qdev_prop_set_drive_err(dev, "drive", blk, &err)) {
error_propagate(errp, err);
object_unparent(OBJECT(dev));
return NULL;

View File

@ -706,8 +706,7 @@ SDState *sd_init(BlockBackend *blk, bool is_spi)
obj = object_new(TYPE_SD_CARD);
dev = DEVICE(obj);
qdev_prop_set_drive_err(dev, "drive", blk, &err);
if (err) {
if (!qdev_prop_set_drive_err(dev, "drive", blk, &err)) {
error_reportf_err(err, "sd_init failed: ");
return NULL;
}

View File

@ -254,9 +254,8 @@ static void ssi_sd_realize(SSISlave *d, Error **errp)
dinfo = drive_get_next(IF_SD);
carddev = qdev_new(TYPE_SD_CARD);
if (dinfo) {
qdev_prop_set_drive_err(carddev, "drive", blk_by_legacy_dinfo(dinfo),
&err);
if (err) {
if (!qdev_prop_set_drive_err(carddev, "drive",
blk_by_legacy_dinfo(dinfo), &err)) {
goto fail;
}
}