[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] qga: Fix handle fd leak in acquire_privilege()
From: |
Luiz Capitulino |
Subject: |
Re: [Qemu-devel] [PATCH] qga: Fix handle fd leak in acquire_privilege() |
Date: |
Tue, 20 May 2014 15:17:42 -0400 |
On Mon, 19 May 2014 15:26:03 +0800
<address@hidden> wrote:
> From: Gonglei <address@hidden>
>
> token should be closed in all conditions.
> So move CloseHandle(token) to "out" branch.
Looks good to me. Michael, are you going to pick this one?
>
> Signed-off-by: Wang Rui <address@hidden>
> Signed-off-by: Gonglei <address@hidden>
> ---
> qga/commands-win32.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/qga/commands-win32.c b/qga/commands-win32.c
> index d793dd0..e769396 100644
> --- a/qga/commands-win32.c
> +++ b/qga/commands-win32.c
> @@ -31,7 +31,7 @@
>
> static void acquire_privilege(const char *name, Error **errp)
> {
> - HANDLE token;
> + HANDLE token = NULL;
> TOKEN_PRIVILEGES priv;
> Error *local_err = NULL;
>
> @@ -53,13 +53,15 @@ static void acquire_privilege(const char *name, Error
> **errp)
> goto out;
> }
>
> - CloseHandle(token);
> } else {
> error_set(&local_err, QERR_QGA_COMMAND_FAILED,
> "failed to open privilege token");
> }
>
> out:
> + if (token) {
> + CloseHandle(token);
> + }
> if (local_err) {
> error_propagate(errp, local_err);
> }