On Mon, 19 May 2014 15:26:03 +0800 <arei.gong...@huawei.com> wrote: > From: Gonglei <arei.gong...@huawei.com> > > 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 <moon.wang...@huawei.com> > Signed-off-by: Gonglei <arei.gong...@huawei.com> > --- > 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); > }