diff mbox

[v20,05/26] remove assertion of qemu_opt_get functions

Message ID 1392186806-10418-6-git-send-email-cyliu@suse.com
State New
Headers show

Commit Message

Chunyan Liu Feb. 12, 2014, 6:33 a.m. UTC
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 <cyliu@suse.com>
---
 util/qemu-option.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

Comments

Eric Blake Feb. 12, 2014, 11:50 p.m. UTC | #1
On 02/11/2014 11:33 PM, Chunyan Liu wrote:
> In qemu_opt_set functions, if desc doen't exist but opts_accepts_any is true, it

s/doen't/doesn't/

> 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 <cyliu@suse.com>
> ---
>  util/qemu-option.c |    3 ---
>  1 files changed, 0 insertions(+), 3 deletions(-)
> 
> diff --git a/util/qemu-option.c b/util/qemu-option.c
> index 21699d0..c51c55d 100644
> --- a/util/qemu-option.c
> +++ b/util/qemu-option.c
> @@ -641,7 +641,6 @@ bool qemu_opt_get_bool(QemuOpts *opts, const char *name, bool defval)
>          }
>          return defval;
>      }
> -    assert(opt->desc && opt->desc->type == QEMU_OPT_BOOL);

I'd still rather see:

if (opt->desc) {
    assert(opt->desc->type == QEMU_OPT_BOOL);
}

That is, weaken but don't eliminate the assertion.  Same for the other
two sites.
diff mbox

Patch

diff --git a/util/qemu-option.c b/util/qemu-option.c
index 21699d0..c51c55d 100644
--- a/util/qemu-option.c
+++ b/util/qemu-option.c
@@ -641,7 +641,6 @@  bool qemu_opt_get_bool(QemuOpts *opts, const char *name, bool defval)
         }
         return defval;
     }
-    assert(opt->desc && opt->desc->type == QEMU_OPT_BOOL);
     return opt->value.boolean;
 }
 
@@ -675,7 +674,6 @@  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);
     return opt->value.uint;
 }
 
@@ -710,7 +708,6 @@  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);
     return opt->value.uint;
 }