[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 3/6] qmp: qmp_qom_list_properties(): ignore e
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v3 3/6] qmp: qmp_qom_list_properties(): ignore empty string options |
Date: |
Mon, 27 May 2019 20:22:03 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
Igor Mammedov <address@hidden> writes:
> Current QAPI semantics return empty "" string in case string property
> value hasn't been set (i.e. NULL). Do not show initial value in this
> case in "qom-list-properties" command output to reduce clutter.
>
> Signed-off-by: Igor Mammedov <address@hidden>
> ---
> qmp.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/qmp.c b/qmp.c
> index 8415541..463c7d4 100644
> --- a/qmp.c
> +++ b/qmp.c
> @@ -41,6 +41,7 @@
> #include "qom/object_interfaces.h"
> #include "hw/mem/memory-device.h"
> #include "hw/acpi/acpi_dev_interface.h"
> +#include "qapi/qmp/qstring.h"
>
> NameInfo *qmp_query_name(Error **errp)
> {
> @@ -596,7 +597,16 @@ ObjectPropertyInfoList *qmp_qom_list_properties(const
> char *typename,
> if (obj) {
> info->q_default =
> object_property_get_qobject(obj, info->name, NULL);
> - info->has_q_default = !!info->q_default;
> + if (info->q_default) {
> + if (qobject_type(info->q_default) == QTYPE_QSTRING) {
> + QString *value = qobject_to(QString, info->q_default);
> + if (!strcmp(qstring_get_str(value), "")) {
> + qobject_unref(info->q_default);
> + info->q_default = NULL;
> + }
> + }
> + info->has_q_default = !!info->q_default;
> + }
> }
>
> entry = g_malloc0(sizeof(*entry));
The commit message suggests we omit @default when a string-valued
property is null. We omit it when it's "", too.
Makes me wonder whether we should omit other "default defaults", too,
such as integer zero. After all, what's so special about strings?
I'm not sure omitting any default defaults is a good idea. But then I'm
not yet sure @default is a good idea.
- [Qemu-devel] [PATCH v3 0/6] numa: deprecate '-numa node, mem' and default memory distribution, Igor Mammedov, 2019/05/17
- [Qemu-devel] [PATCH v3 1/6] pc: fix possible NULL pointer dereference in pc_machine_get_device_memory_region_size(), Igor Mammedov, 2019/05/17
- [Qemu-devel] [PATCH v3 2/6] qmp: make "qom-list-properties" show initial property values, Igor Mammedov, 2019/05/17
- [Qemu-devel] [PATCH v3 3/6] qmp: qmp_qom_list_properties(): ignore empty string options, Igor Mammedov, 2019/05/17
- Re: [Qemu-devel] [PATCH v3 3/6] qmp: qmp_qom_list_properties(): ignore empty string options,
Markus Armbruster <=
- [Qemu-devel] [PATCH v3 4/6] numa: introduce "numa-mem-supported" machine property, Igor Mammedov, 2019/05/17
- [Qemu-devel] [PATCH v3 5/6] numa: deprecate 'mem' parameter of '-numa node' option, Igor Mammedov, 2019/05/17
- [Qemu-devel] [PATCH v3 6/6] numa: deprecate implict memory distribution between nodes, Igor Mammedov, 2019/05/17