[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 00/44] Less clumsy error checking
From: |
Markus Armbruster |
Subject: |
Re: [PATCH v3 00/44] Less clumsy error checking |
Date: |
Mon, 06 Jul 2020 10:12:56 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
diff between v2 rebased and v3, with hunks that change only whitespace
dropped:
diff --git a/qapi/opts-visitor.c b/qapi/opts-visitor.c
index 6d8f4b6928..7781c23a42 100644
--- a/qapi/opts-visitor.c
+++ b/qapi/opts-visitor.c
@@ -235,12 +235,12 @@ opts_start_list(Visitor *v, const char *name, GenericList
**list, size_t size,
/* we don't support visits without a list */
assert(list);
ov->repeated_opts = lookup_distinct(ov, name, errp);
- if (ov->repeated_opts) {
- ov->list_mode = LM_IN_PROGRESS;
- *list = g_malloc0(size);
- } else {
+ if (!ov->repeated_opts) {
*list = NULL;
+ return false;
}
+ ov->list_mode = LM_IN_PROGRESS;
+ *list = g_malloc0(size);
return true;
}
diff --git a/qapi/qapi-clone-visitor.c b/qapi/qapi-clone-visitor.c
index 5a54bd593f..c45c5caa3b 100644
--- a/qapi/qapi-clone-visitor.c
+++ b/qapi/qapi-clone-visitor.c
@@ -56,8 +56,7 @@ static bool qapi_clone_start_list(Visitor *v, const char
*name,
GenericList **listp, size_t size,
Error **errp)
{
- qapi_clone_start_struct(v, name, (void **)listp, size, errp);
- return true;
+ return qapi_clone_start_struct(v, name, (void **)listp, size, errp);
}
static GenericList *qapi_clone_next_list(Visitor *v, GenericList *tail,
@@ -75,8 +74,7 @@ static bool qapi_clone_start_alternate(Visitor *v, const char
*name,
GenericAlternate **obj, size_t size,
Error **errp)
{
- qapi_clone_start_struct(v, name, (void **)obj, size, errp);
- return true;
+ return qapi_clone_start_struct(v, name, (void **)obj, size, errp);
}
static bool qapi_clone_type_int64(Visitor *v, const char *name, int64_t *obj,
diff --git a/qdev-monitor.c b/qdev-monitor.c
index 7ebb97cf0d..31cc1f6564 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -652,7 +652,6 @@ DeviceState *qdev_device_add(QemuOpts *opts, Error **errp)
/* Check whether the hotplug is allowed by the machine */
if (qdev_hotplug && !qdev_hotplug_allowed(dev, errp)) {
- /* Error must be set in the machine hook */
goto err_del_dev;
}
diff --git a/qom/object.c b/qom/object.c
index 8d698abf4d..d6bba48e41 100644
--- a/qom/object.c
+++ b/qom/object.c
@@ -1773,21 +1773,24 @@ static void object_set_link_property(Object *obj,
Visitor *v,
LinkProperty *prop = opaque;
Object **targetp = object_link_get_targetp(obj, prop);
Object *old_target = *targetp;
- Object *new_target = NULL;
+ Object *new_target;
char *path = NULL;
if (!visit_type_str(v, name, &path, errp)) {
return;
}
- if (strcmp(path, "") != 0) {
+ if (*path) {
new_target = object_resolve_link(obj, name, path, errp);
+ if (!new_target) {
+ g_free(path);
+ return;
+ }
+ } else {
+ new_target = NULL;
}
g_free(path);
- if (!new_target) {
- return;
- }
prop->check(obj, name, new_target, &local_err);
if (local_err) {
- [PATCH v3 34/44] error: Eliminate error_propagate() with Coccinelle, part 2, (continued)
- [PATCH v3 34/44] error: Eliminate error_propagate() with Coccinelle, part 2, Markus Armbruster, 2020/07/06
- [PATCH v3 05/44] virtio-crypto-pci: Tidy up virtio_crypto_pci_realize(), Markus Armbruster, 2020/07/06
- [PATCH v3 40/44] qapi: Purge error_propagate() from QAPI core, Markus Armbruster, 2020/07/06
- [PATCH v3 41/44] error: Avoid error_propagate() after migrate_add_blocker(), Markus Armbruster, 2020/07/06
- [PATCH v3 16/44] qapi: Make visitor functions taking Error ** return bool, not void, Markus Armbruster, 2020/07/06
- [PATCH v3 32/44] error: Avoid unnecessary error_propagate() after error_setg(), Markus Armbruster, 2020/07/06
- [PATCH v3 25/44] qom: Put name parameter before value / visitor parameter, Markus Armbruster, 2020/07/06
- [PATCH v3 27/44] qom: Use returned bool to check for failure, Coccinelle part, Markus Armbruster, 2020/07/06
- Re: [PATCH v3 00/44] Less clumsy error checking,
Markus Armbruster <=
- [PATCH v3 43/44] qdev: Ignore Error objects where the return value suffices, Markus Armbruster, 2020/07/06
- [PATCH v3 42/44] qemu-img: Ignore Error objects where the return value suffices, Markus Armbruster, 2020/07/06
- [PATCH v3 37/44] block/parallels: Simplify parallels_open() after previous commit, Markus Armbruster, 2020/07/06
- [PATCH v3 33/44] error: Eliminate error_propagate() with Coccinelle, part 1, Markus Armbruster, 2020/07/06