if (!LookupPrivilegeValueW(NULL, SE_SHUTDOWN_NAME, &Privileges.Privileges[0].Luid))
{
DPRINT("LookupPrivilegeValue failed\n");
+ CloseHandle(hToken);
return;
}
if (!AdjustTokenPrivileges(hToken, FALSE, &Privileges, 0, NULL, NULL))
{
DPRINT("AdjustTokenPrivileges failed\n");
+ CloseHandle(hToken);
return;
}
if (!ExitWindowsEx(EWX_REBOOT, SHTDN_REASON_MAJOR_OTHER | SHTDN_REASON_MINOR_OTHER | SHTDN_REASON_FLAG_PLANNED))
{
DPRINT("ExitWindowsEx failed\n");
+ CloseHandle(hToken);
}
}