[ros-dev] [ros-diffs] [hbelusca] 66240: [WINLOGON] - Implement KillComProcesses that just kills with force and without any notification back to winlogon, any remaining app that is still alive even if we asked before to ...

Thomas Faber thomas.faber at reactos.org
Fri Feb 13 07:06:15 UTC 2015


On 2015-02-13 00:35, hbelusca at svn.reactos.org wrote:
> +    if (LSData->Session->UserToken != NULL &&
> +        !ImpersonateLoggedOnUser(LSData->Session->UserToken))
> +    {
> +        ERR("ImpersonateLoggedOnUser() failed with error %lu\n", GetLastError());
> +        return 0;
> +    }
> +
> +    /* Attempt to kill remaining processes. No notifications needed. */
> +    if (!ExitWindowsEx(EWX_CALLER_WINLOGON | EWX_NONOTIFY | EWX_FORCE | EWX_LOGOFF, 0))
> +    {
> +        ERR("Unable to kill COM apps, error %lu\n", GetLastError());
> +        RevertToSelf();
> +        return 0;
> +    }
> +
> +    if (LSData->Session->UserToken)
> +        RevertToSelf();

Sounds like the RevertToSelf() call in the error case should not be
unconditional.



More information about the Ros-dev mailing list