[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for 1.3 v2] block: Fix regression for MinGW (ass
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] [PATCH for 1.3 v2] block: Fix regression for MinGW (assertion caused by short string) |
Date: |
Sat, 24 Nov 2012 21:01:16 +0000 |
Thanks, applied.
On Thu, Nov 22, 2012 at 6:25 AM, Stefan Weil <address@hidden> wrote:
> The local string tmp_filename is passed to function get_tmp_filename
> which expects a string with minimum size MAX_PATH for w32 hosts.
>
> MAX_PATH is 260 and PATH_MAX is 259, so tmp_filename was too short.
>
> Commit eba25057b9a5e19d10ace2bc7716667a31297169 introduced this
> regression.
>
> Signed-off-by: Stefan Weil <address@hidden>
> ---
>
> v2: Added TODO comment as suggested by Stefan Hajnoczi.
>
> Hi Anthony, hi Blue,
>
> this fix is needed for 1.3 to avoid a fatal assertion on Windows.
> As discussed on qemu-devel, it is a minimal solution and can be
> replaced by a better one after 1.3.
>
> Please commit it to git master.
>
> Regards
> Stefan
>
>
> block.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/block.c b/block.c
> index 854ebd6..c05875f 100644
> --- a/block.c
> +++ b/block.c
> @@ -787,7 +787,8 @@ int bdrv_open(BlockDriverState *bs, const char *filename,
> int flags,
> BlockDriver *drv)
> {
> int ret;
> - char tmp_filename[PATH_MAX];
> + /* TODO: extra byte is a hack to ensure MAX_PATH space on Windows. */
> + char tmp_filename[PATH_MAX + 1];
>
> if (flags & BDRV_O_SNAPSHOT) {
> BlockDriverState *bs1;
> --
> 1.7.10.4
>