Coccinelle reported:
$ spatch ... --timeout 60 --sp-file \
scripts/coccinelle/simplify-init-realize-error_propagate.cocci
HANDLING: ./hw/arm/aspeed_ast2600.c
>>> possible moves from aspeed_soc_ast2600_init() to
aspeed_soc_ast2600_realize() in ./hw/arm/aspeed_ast2600.c:243
While reviewing we notice we don't need two different Error*,
drop the one less used.
Reviewed-by: Cédric Le Goater <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
---
v3: Indented 'return'.
---
hw/arm/aspeed_ast2600.c | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/hw/arm/aspeed_ast2600.c b/hw/arm/aspeed_ast2600.c
index 1a869e09b9..a860ab6a35 100644
--- a/hw/arm/aspeed_ast2600.c
+++ b/hw/arm/aspeed_ast2600.c
@@ -245,7 +245,7 @@ static void aspeed_soc_ast2600_realize(DeviceState *dev,
Error **errp)
int i;
AspeedSoCState *s = ASPEED_SOC(dev);
AspeedSoCClass *sc = ASPEED_SOC_GET_CLASS(s);
- Error *err = NULL, *local_err = NULL;
+ Error *err = NULL;
qemu_irq irq;
/* IO space */
@@ -418,9 +418,12 @@ static void aspeed_soc_ast2600_realize(DeviceState *dev,
Error **errp)
return;
}
object_property_set_int(OBJECT(&s->spi[i]), 1, "num-cs", &err);
+ if (err) {
+ error_propagate(errp, err);
+ return;
+ }
object_property_set_bool(OBJECT(&s->spi[i]), true, "realized",
- &local_err);
- error_propagate(&err, local_err);
+ &err);
if (err) {
error_propagate(errp, err);
return;
@@ -472,12 +475,15 @@ static void aspeed_soc_ast2600_realize(DeviceState *dev,
Error **errp)
qdev_set_nic_properties(DEVICE(&s->ftgmac100[i]), &nd_table[i]);
object_property_set_bool(OBJECT(&s->ftgmac100[i]), true, "aspeed",
&err);
- object_property_set_bool(OBJECT(&s->ftgmac100[i]), true, "realized",
- &local_err);
- error_propagate(&err, local_err);
if (err) {
error_propagate(errp, err);
- return;
+ return;
+ }
+ object_property_set_bool(OBJECT(&s->ftgmac100[i]), true, "realized",
+ &err);
+ if (err) {
+ error_propagate(errp, err);
+ return;
}
sysbus_mmio_map(SYS_BUS_DEVICE(&s->ftgmac100[i]), 0,
sc->memmap[ASPEED_ETH1 + i]);
--
2.21.1