[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH 45/50] qemu-option: Functions to convert to/from
From: |
Markus Armbruster |
Subject: |
[Qemu-devel] Re: [PATCH 45/50] qemu-option: Functions to convert to/from QDict |
Date: |
Thu, 04 Mar 2010 22:12:01 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) |
Luiz Capitulino <address@hidden> writes:
> On Thu, 4 Mar 2010 16:57:06 +0100
> Markus Armbruster <address@hidden> wrote:
>
>> The functions are somewhat restricted. Good enough for the job at
>> hand. We'll extend them when we need more.
>>
>> Signed-off-by: Markus Armbruster <address@hidden>
>> ---
>> qemu-option.c | 79
>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> qemu-option.h | 3 ++
>> 2 files changed, 82 insertions(+), 0 deletions(-)
>>
>> diff --git a/qemu-option.c b/qemu-option.c
>> index ab488e4..24bb19b 100644
>> --- a/qemu-option.c
>> +++ b/qemu-option.c
[...]
>> +/*
>> + * Convert from QemuOpts to QDict.
>> + * The QDict values are of type QString.
>> + * TODO We'll want to use types appropriate for opt->desc->type, but
>> + * this is enough for now.
>> + */
>> +QDict *qemu_opts_to_qdict(QemuOpts *opts, QDict *qdict)
>> +{
>> + QemuOpt *opt;
>> + QObject *val;
>> +
>> + if (!qdict) {
>> + qdict = qdict_new();
>> + }
>> + if (opts->id) {
>> + qdict_put(qdict, "id", qstring_from_str(opts->id));
>> + }
>> + QTAILQ_FOREACH(opt, &opts->head, next) {
>> + val = QOBJECT(qstring_from_str(opt->str));
>> + qdict_put_obj(qdict, opt->name, val);
>> + }
>
> Why not just do:
>
> qdict_put(qdict, opt->name, qstring_from_str(opt->str));
I got a version without the TODO. Looks like this:
QTAILQ_FOREACH(opt, &opts->head, next) {
switch (opt->desc ? opt->desc->type : QEMU_OPT_STRING) {
case QEMU_OPT_BOOL:
val = QOBJECT(qbool_from_int(opt->value.boolean));
break;
case QEMU_OPT_NUMBER:
case QEMU_OPT_SIZE:
// FIXME opts only uint64_t, qint only int64_t
val = QOBJECT(qint_from_int(opt->value.uint));
break;
default:
val = QOBJECT(qstring_from_str(opt->str));
break;
}
qdict_put_obj(qdict, opt->name, val);
}
I dumbed it down to keep this series as simple as possible, and missed
the simplification opportunity. Okay to leave it as is?
[...]
- [Qemu-devel] [PATCH 07/50] block: Simplify usb_msd_initfn() test for "can read bdrv key", (continued)
- [Qemu-devel] [PATCH 07/50] block: Simplify usb_msd_initfn() test for "can read bdrv key", Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 06/50] monitor: Separate "default monitor" and "current monitor" cleanly, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 40/50] error: New QERR_BUS_NO_HOTPLUG, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 18/50] error: Infrastructure to track locations for error reporting, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 15/50] error: Don't abuse qemu_error() for non-error in scsi_hot_add(), Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 34/50] error: New QERR_BUS_NOT_FOUND, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 39/50] error: New QERR_BAD_BUS_FOR_DEVICE, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 42/50] error: New QERR_NO_BUS_FOR_DEVICE, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 45/50] qemu-option: Functions to convert to/from QDict, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 49/50] monitor: Use argument type 'O' for device_add, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 47/50] qemu-option: Rename find_list() to qemu_find_opts() & external linkage, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 16/50] error: Replace qemu_error() by error_report(), Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 24/50] qdev: Factor qdev_create_from_info() out of qdev_create(), Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 19/50] error: Include the program name in error messages to stderr, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 38/50] error: New error_printf_unless_qmp(), Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 20/50] error: Track locations in configuration files, Markus Armbruster, 2010/03/04
- [Qemu-devel] [PATCH 46/50] qemu-option: Move the implied first name into QemuOptsList, Markus Armbruster, 2010/03/04