Quoting Marc-André Lureau (2018-11-03 08:01:43)
> Introduced in commit b1ba8890e63ce9432c41c5c3fc229f54c87c9c99, vol_h
> handle should be closed, and "out" cleanup should be done after
> DeviceIoControl() fails.
> 
> Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com>

Thanks, applied to qga tree:
  https://github.com/mdroth/qemu/commits/qga

> ---
>  qga/commands-win32.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/qga/commands-win32.c b/qga/commands-win32.c
> index ef1d7d48d2..62e1b51dfe 100644
> --- a/qga/commands-win32.c
> +++ b/qga/commands-win32.c
> @@ -797,7 +797,7 @@ static GuestDiskAddressList *build_guest_disk_info(char 
> *guid, Error **errp)
>                      0, extents, size, NULL, NULL)) {
>                  error_setg_win32(errp, GetLastError(),
>                      "failed to get disk extents");
> -                return NULL;
> +                goto out;
>              }
>          } else if (last_err == ERROR_INVALID_FUNCTION) {
>              /* Possibly CD-ROM or a shared drive. Try to pass the volume */
> @@ -855,6 +855,9 @@ static GuestDiskAddressList *build_guest_disk_info(char 
> *guid, Error **errp)
> 
> 
>  out:
> +    if (vol_h != INVALID_HANDLE_VALUE) {
> +        CloseHandle(vol_h);
> +    }
>      qapi_free_GuestDiskAddress(disk);
>      g_free(extents);
>      g_free(name);
> -- 
> 2.19.1.708.g4ede3d42df
> 

Reply via email to