qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] vl: Fix compile issue with Werror option


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH] vl: Fix compile issue with Werror option
Date: Sat, 21 Dec 2013 11:46:16 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux)

Mike Qiu <address@hidden> writes:

> Currently, if compile with Werror option, the error message shows
> below:
>
>   GEN   config-host.h
>   GEN   trace/generated-tracers.h
>         CHK version_gen.h
>   GEN   trace/generated-tracers.c
>   CC    vl.o
> vl.c: In function ‘get_boot_devices_list’:
> vl.c:1257:21: error: ‘bootpath’ may be used uninitialized
>       in this function [-Werror=maybe-uninitialized]
>          len = strlen(bootpath) + 1;
>                      ^
> cc1: all warnings being treated as errors
> make: *** [vl.o] Error 1
>
> This patch is to solve this issue.
>
> Signed-off-by: Mike Qiu <address@hidden>
> ---
>  vl.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/vl.c b/vl.c
> index b97728f..d67b284 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -1230,7 +1230,7 @@ char *get_boot_devices_list(size_t *size, bool 
> ignore_suffixes)
>      char *list = NULL;
>  
>      QTAILQ_FOREACH(i, &fw_boot_order, link) {
> -        char *devpath = NULL, *bootpath;
> +        char *devpath = NULL, *bootpath = NULL;
>          size_t len;
>  
>          if (i->dev) {

Compiler version?  I'm asking because bootpath looks quite defined on
all paths leading to the line you quoted:

    QTAILQ_FOREACH(i, &fw_boot_order, link) {
        char *devpath = NULL, *bootpath;
        size_t len;

        if (i->dev) {
            devpath = qdev_get_fw_dev_path(i->dev);
            assert(devpath);
        }

        if (i->suffix && devpath) {
            size_t bootpathlen = strlen(devpath) + strlen(i->suffix) + 1;

--->        bootpath = g_malloc(bootpathlen);
            snprintf(bootpath, bootpathlen, "%s%s", devpath, i->suffix);
            g_free(devpath);
        } else if (devpath) {
--->        bootpath = devpath;
        } else {
            assert(i->suffix);
--->        bootpath = g_strdup(i->suffix);
        }

        if (total) {
            list[total-1] = '\n';
        }
        len = strlen(bootpath) + 1;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]