[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 33/38] qemu-option: Clean up fragile use of error_is_
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] [PULL 33/38] qemu-option: Clean up fragile use of error_is_set() |
Date: |
Thu, 8 May 2014 14:52:57 -0400 |
From: Markus Armbruster <address@hidden>
Using error_is_set(ERRP) to find out whether to bail out due to
previous error is either wrong, fragile, or unnecessarily opaque.
It's wrong when ERRP may be null, because errors go undetected when it
is. It's fragile when proving ERRP non-null involves a non-local
argument. Else, it's unnecessarily opaque (see commit 84d18f0).
The error_is_set(state->errp) in qemu_opts_from_qdict_1() is merely
fragile, because the callers never pass state argument with null
state->errp.
Make the code more robust and more obviously correct: test
*state->errp directly.
Signed-off-by: Markus Armbruster <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Luiz Capitulino <address@hidden>
---
util/qemu-option.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/util/qemu-option.c b/util/qemu-option.c
index 8bbc3ad..324e4c5 100644
--- a/util/qemu-option.c
+++ b/util/qemu-option.c
@@ -1036,7 +1036,7 @@ static void qemu_opts_from_qdict_1(const char *key,
QObject *obj, void *opaque)
const char *value;
int n;
- if (!strcmp(key, "id") || error_is_set(state->errp)) {
+ if (!strcmp(key, "id") || *state->errp) {
return;
}
--
1.9.0
- [Qemu-devel] [PULL 25/38] error: Consistently name Error ** objects errp, and not err, (continued)
- [Qemu-devel] [PULL 25/38] error: Consistently name Error ** objects errp, and not err, Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 27/38] hmp: Guard against misuse of hmp_handle_error(), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 26/38] qga: Use return values instead of error_is_set(errp), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 28/38] qapi: Drop redundant, unclean error_is_set(), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 30/38] qapi: Clean up fragile use of error_is_set(), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 29/38] tests/qapi-schema: Drop superfluous error_is_set(), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 31/38] qga: Clean up fragile use of error_is_set(), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 34/38] dump: Drop pointless error_is_set(), DumpState member errp, Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 38/38] Revert "qapi: Clean up superfluous null check in qapi_dealloc_type_str()", Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 35/38] qmp: Don't use error_is_set() to suppress additional errors, Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 33/38] qemu-option: Clean up fragile use of error_is_set(),
Luiz Capitulino <=
- [Qemu-devel] [PULL 36/38] qmp: use valid JSON in transaction example, Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 32/38] qga: Drop superfluous error_is_set(), Luiz Capitulino, 2014/05/08
- [Qemu-devel] [PULL 37/38] qapi: Document optional arguments' backwards compatibility, Luiz Capitulino, 2014/05/08
- Re: [Qemu-devel] [PULL 00/38] QMP queue, Peter Maydell, 2014/05/09