On 2015-02-13 00:35, hbelu...@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.

_______________________________________________
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Reply via email to