All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Blake <eblake@redhat.com>
To: Dong Xu Wang <wdongxu@linux.vnet.ibm.com>
Cc: kwolf@redhat.com, wdongxu@cn.ibm.com, qemu-devel@nongnu.org,
	stefanha@redhat.com, armbru@redhat.com
Subject: Re: [Qemu-devel] [PATCH V16 4/7] Create some QemuOpts functons
Date: Wed, 10 Jul 2013 13:06:51 -0600	[thread overview]
Message-ID: <51DDB0CB.1080000@redhat.com> (raw)
In-Reply-To: <1371547919-15654-5-git-send-email-wdongxu@linux.vnet.ibm.com>

[-- Attachment #1: Type: text/plain, Size: 1314 bytes --]

On 06/18/2013 03:31 AM, Dong Xu Wang wrote:
> These functions will be used in next commit.
> 
> qemu_opt_get_(*)_del functions are used to make sure we
> have the same behaviors as before: in block layer, after
> parsing a parameter value, parameter list will delete it
> to avoid parsing it twice.
> 
> Signed-off-by: Dong Xu Wang <wdongxu@linux.vnet.ibm.com>
> ---

>  
> +const char *qemu_opt_get_del(QemuOpts *opts, const char *name)
> +{
> +    QemuOpt *opt = qemu_opt_find(opts, name);
> +    const QemuOptDesc *desc;
> +    const char *str = NULL;
> +
> +    if (!opt) {
> +        desc = find_desc_by_name(opts->list->desc, name);
> +        if (desc && desc->def_value_str) {
> +            str = g_strdup(desc->def_value_str);
> +        }
> +    } else {
> +        str = g_strdup(opt->str);
> +        qemu_opt_del(opt);
> +    }
> +    return str;
> +}

Ouch - why is this function returning 'const char *'?  It is always
returning g_strdup'd memory, and returning 'char *' would make it more
obvious that the caller must free it.  I think this warrants a respin
for v17, after all, since changing the signature here will allow
cleanups in later patches.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 621 bytes --]

  parent reply	other threads:[~2013-07-10 19:07 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-18  9:31 [Qemu-devel] [PATCH V16 0/7] replace QEMUOptionParameter with QemuOpts parser Dong Xu Wang
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 1/7] add def_value_str in QemuOptDesc struct and rewrite qemu_opts_print Dong Xu Wang
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 2/7] avoid duplication of default value in QemuOpts Dong Xu Wang
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 3/7] Create four QemuOptsList related functions Dong Xu Wang
2013-07-10 16:07   ` Eric Blake
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 4/7] Create some QemuOpts functons Dong Xu Wang
2013-07-10 16:51   ` Eric Blake
2013-07-10 19:06   ` Eric Blake [this message]
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 5/7] Use QemuOpts support in block layer Dong Xu Wang
2013-07-10 17:56   ` Eric Blake
2013-07-10 19:47   ` Eric Blake
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 6/7] query-command-line-options outputs def_value_str Dong Xu Wang
2013-07-10 19:56   ` Eric Blake
2013-06-18  9:31 ` [Qemu-devel] [PATCH V16 7/7] remove QEMUOptionParameter related functions and struct Dong Xu Wang
2013-07-10 19:57   ` Eric Blake
2013-07-04 12:52 ` [Qemu-devel] [PATCH V16 0/7] replace QEMUOptionParameter with QemuOpts parser Stefan Hajnoczi
2013-07-09 20:41   ` Eric Blake
2013-07-10 19:49     ` Eric Blake
2013-07-15  7:38       ` Dong Xu Wang
2013-07-09 22:05   ` Andreas Färber

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51DDB0CB.1080000@redhat.com \
    --to=eblake@redhat.com \
    --cc=armbru@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=wdongxu@cn.ibm.com \
    --cc=wdongxu@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.