qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v7] block/vvfat: assert return value of fopen wh


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH v7] block/vvfat: assert return value of fopen which may fail
Date: Mon, 18 Aug 2014 09:06:26 +0100

On 18 August 2014 09:00, zhanghailiang <address@hidden> wrote:
> From: Li Liu <address@hidden>
>
> fopen() may return NULL which will cause setbuf() segmentfault
>
> Signed-off-by: zhanghailiang <address@hidden>
> Signed-off-by: Li Liu <address@hidden>
> ---
>  block/vvfat.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/block/vvfat.c b/block/vvfat.c
> index 70176b1..62023e1 100644
> --- a/block/vvfat.c
> +++ b/block/vvfat.c
> @@ -1084,6 +1084,7 @@ static int vvfat_open(BlockDriverState *bs, QDict 
> *options, int flags,
>
>  DLOG(if (stderr == NULL) {
>      stderr = fopen("vvfat.log", "a");
> +    assert(stderr);
>      setbuf(stderr, NULL);
>  })

An assertion is no better than a segfault.

Better I think would be to just remove this whole lump of code
entirely. Lots of other files do debug printing to stderr without
attempting to open a file if stderr happens to be NULL, why
should vvfat.c be special?

-- PMM



reply via email to

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