If Winlogon gets an error when trying to set an environment variable, the logon will fail.

Make sure that all the environment variable are valid and do not contain an = in the name.