close the handle returned by OpenProcessToken() (fixes #10129)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -944,18 +944,23 @@ bool wxShutdown(int WXUNUSED_IN_WINCE(flags))
|
|||||||
TOKEN_PRIVILEGES tkp;
|
TOKEN_PRIVILEGES tkp;
|
||||||
|
|
||||||
// Get the LUID for the shutdown privilege.
|
// Get the LUID for the shutdown privilege.
|
||||||
::LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,
|
bOK = ::LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,
|
||||||
&tkp.Privileges[0].Luid);
|
&tkp.Privileges[0].Luid) != 0;
|
||||||
|
|
||||||
tkp.PrivilegeCount = 1; // one privilege to set
|
if ( bOK )
|
||||||
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
|
{
|
||||||
|
tkp.PrivilegeCount = 1; // one privilege to set
|
||||||
|
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
|
||||||
|
|
||||||
// Get the shutdown privilege for this process.
|
// Get the shutdown privilege for this process.
|
||||||
::AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,
|
::AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,
|
||||||
(PTOKEN_PRIVILEGES)NULL, 0);
|
(PTOKEN_PRIVILEGES)NULL, 0);
|
||||||
|
|
||||||
// Cannot test the return value of AdjustTokenPrivileges.
|
// Cannot test the return value of AdjustTokenPrivileges.
|
||||||
bOK = ::GetLastError() == ERROR_SUCCESS;
|
bOK = ::GetLastError() == ERROR_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
::CloseHandle(hToken);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user