[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v21 04/25] improve assertion in qemu_opt_get functio
From: |
Chunyan Liu |
Subject: |
[Qemu-devel] [PATCH v21 04/25] improve assertion in qemu_opt_get functions |
Date: |
Fri, 21 Feb 2014 18:35:27 +0800 |
In qemu_opt_set functions, if desc doen't exist but opts_accepts_any is true, it
won't report error, but can still alloc an opt for the option and save it.
However, after that, when doing qemu_opt_get, this option could be found in opts
but opt->desc is NULL. This is correct, should not be treated as error.
This patch would fix vvfat issue after changing to QemuOpts.
Signed-off-by: Chunyan Liu <address@hidden>
---
changes to v20:
* fix Eric's comments:
- checking opt->desc instead of removing the assertion
util/qemu-option.c | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/util/qemu-option.c b/util/qemu-option.c
index b2d1a62..11c0313 100644
--- a/util/qemu-option.c
+++ b/util/qemu-option.c
@@ -554,7 +554,9 @@ bool qemu_opt_get_bool(QemuOpts *opts, const char *name,
bool defval)
}
return defval;
}
- assert(opt->desc && opt->desc->type == QEMU_OPT_BOOL);
+ if (opt->desc) {
+ assert(opt->desc->type == QEMU_OPT_BOOL);
+ }
return opt->value.boolean;
}
@@ -576,7 +578,9 @@ uint64_t qemu_opt_get_number(QemuOpts *opts, const char
*name, uint64_t defval)
}
return defval;
}
- assert(opt->desc && opt->desc->type == QEMU_OPT_NUMBER);
+ if (opt->desc) {
+ assert(opt->desc->type == QEMU_OPT_NUMBER);
+ }
return opt->value.uint;
}
@@ -596,7 +600,9 @@ uint64_t qemu_opt_get_size(QemuOpts *opts, const char
*name, uint64_t defval)
}
return defval;
}
- assert(opt->desc && opt->desc->type == QEMU_OPT_SIZE);
+ if (opt->desc) {
+ assert(opt->desc->type == QEMU_OPT_SIZE);
+ }
return opt->value.uint;
}
--
1.6.0.2
- [Qemu-devel] [PATCH v21 00/25] replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 01/25] add def_value_str to QemuOptDesc, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 02/25] qapi: output def_value_str when query command line options, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 04/25] improve assertion in qemu_opt_get functions,
Chunyan Liu <=
- [Qemu-devel] [PATCH v21 06/25] add convert functions between QEMUOptionParameter to QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 05/25] add some QemuOpts functions for replace work, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 03/25] improve some functions in qemu-option.c, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 07/25] change block layer to support both QemuOpts and QEMUOptionParamter, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 09/25] gluster.c: replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 11/25] qcow.c: replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 08/25] cow.c: replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 13/25] qed.c: replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 10/25] iscsi.c: replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21
- [Qemu-devel] [PATCH v21 12/25] qcow2.c: replace QEMUOptionParameter with QemuOpts, Chunyan Liu, 2014/02/21