qga: Fix handle fd leak in acquire_privilege()
token should be closed in all conditions. So move CloseHandle(token) to "out" branch. Signed-off-by: Wang Rui <moon.wangrui@huawei.com> Signed-off-by: Gonglei <arei.gonglei@huawei.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
parent
e00fcfeab3
commit
374044f08f
@ -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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user