qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 13/15] qemu-option: Clean up fragile use of error_is


From: Markus Armbruster
Subject: [Qemu-devel] [PATCH 13/15] qemu-option: Clean up fragile use of error_is_set()
Date: Fri, 25 Apr 2014 17:05:51 +0200

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>
---
 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 9d898af..c72e627 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.8.1.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]