mirror of https://github.com/xemu-project/xemu.git
vl: Clean up error reporting in device_init_func()
Calling error_report() in a function that takes an Error ** argument is suspicious. device_init_func() does that, and then fails without setting an error. Its caller main(), via qemu_opts_foreach(), is fine with it, but clean it up anyway. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20181017082702.5581-25-armbru@redhat.com>
This commit is contained in:
parent
406b6367e1
commit
cd65f34991
10
vl.c
10
vl.c
|
@ -2222,12 +2222,10 @@ static int device_help_func(void *opaque, QemuOpts *opts, Error **errp)
|
||||||
|
|
||||||
static int device_init_func(void *opaque, QemuOpts *opts, Error **errp)
|
static int device_init_func(void *opaque, QemuOpts *opts, Error **errp)
|
||||||
{
|
{
|
||||||
Error *err = NULL;
|
|
||||||
DeviceState *dev;
|
DeviceState *dev;
|
||||||
|
|
||||||
dev = qdev_device_add(opts, &err);
|
dev = qdev_device_add(opts, errp);
|
||||||
if (!dev) {
|
if (!dev) {
|
||||||
error_report_err(err);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
object_unref(OBJECT(dev));
|
object_unref(OBJECT(dev));
|
||||||
|
@ -4492,10 +4490,8 @@ int main(int argc, char **argv, char **envp)
|
||||||
|
|
||||||
/* init generic devices */
|
/* init generic devices */
|
||||||
rom_set_order_override(FW_CFG_ORDER_OVERRIDE_DEVICE);
|
rom_set_order_override(FW_CFG_ORDER_OVERRIDE_DEVICE);
|
||||||
if (qemu_opts_foreach(qemu_find_opts("device"),
|
qemu_opts_foreach(qemu_find_opts("device"),
|
||||||
device_init_func, NULL, NULL)) {
|
device_init_func, NULL, &error_fatal);
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
cpu_synchronize_all_post_init();
|
cpu_synchronize_all_post_init();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue