On 09/04/2015 20:50, Eduardo Habkost wrote:
> On Thu, Apr 09, 2015 at 02:11:11PM +0200, Paolo Bonzini wrote:
>> On 08/04/2015 20:16, Eduardo Habkost wrote:
>>> Currently it is impossible to set an option in a config file to an empty
>>> string, because the parser matches only lines containing non-empty
>>> strings between double-quotes.
>>>
>>> As sscanf() "[" conversion specifier only matches non-empty strings, add
>>> a special case for empty strings.
>>>
>>> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com>
>>> ---
>>>  util/qemu-config.c | 3 ++-
>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/util/qemu-config.c b/util/qemu-config.c
>>> index 2d32ce7..9f9577d 100644
>>> --- a/util/qemu-config.c
>>> +++ b/util/qemu-config.c
>>> @@ -413,7 +413,8 @@ int qemu_config_parse(FILE *fp, QemuOptsList **lists, 
>>> const char *fname)
>>>              opts = qemu_opts_create(list, NULL, 0, &error_abort);
>>>              continue;
>>>          }
>>> -        if (sscanf(line, " %63s = \"%1023[^\"]\"", arg, value) == 2) {
>>> +        if (sscanf(line, " %63s = \"%1023[^\"]\"", arg, value) == 2 ||
>>> +            (value[0] = '\0', sscanf(line, " %63s = \"\"", arg) == 1)) {
>>>              /* arg = value */
>>>              if (opts == NULL) {
>>>                  error_report("no group defined");
>>>
>>
>> Acked-by: Paolo Bonzini <pbonz...@redhat.com>
> 
> Thanks! Whose tree this should go through?

Acked-by generally means that you're welcome to take it through yours.

My "misc" tree hosts non-trivial patches outside well-defined
maintainership area, but it's less work to carry patches only from
people who don't send pull requests.  Maybe it's not the case of this
patch, but using your own tree also means that it's simpler for you to
sort out the dependencies.

Paolo

Reply via email to