qdev: fix -device foo,?

Since most property types do not have a parse property now, this was
broken.  Fix it by looking at the setter instead.

Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>
Acked-by: Andreas F=E4rber <afaerber@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Paolo Bonzini 2012-05-02 13:30:59 +02:00 committed by Anthony Liguori
parent 77f4c9a68a
commit 90ca64a970
1 changed files with 2 additions and 2 deletions

View File

@ -158,7 +158,7 @@ int qdev_device_help(QemuOpts *opts)
* for removal. This conditional should be removed along with * for removal. This conditional should be removed along with
* it. * it.
*/ */
if (!prop->info->parse) { if (!prop->info->set) {
continue; /* no way to set it, don't show */ continue; /* no way to set it, don't show */
} }
error_printf("%s.%s=%s\n", driver, prop->name, error_printf("%s.%s=%s\n", driver, prop->name,
@ -166,7 +166,7 @@ int qdev_device_help(QemuOpts *opts)
} }
if (info->bus_info) { if (info->bus_info) {
for (prop = info->bus_info->props; prop && prop->name; prop++) { for (prop = info->bus_info->props; prop && prop->name; prop++) {
if (!prop->info->parse) { if (!prop->info->set) {
continue; /* no way to set it, don't show */ continue; /* no way to set it, don't show */
} }
error_printf("%s.%s=%s\n", driver, prop->name, error_printf("%s.%s=%s\n", driver, prop->name,