Did you recently change one of your ~/Xsession, ~/xinitrc, or other X-related scripts? I was playing with some of them on my machine earlier, and they override the defaults (in /etc/X11 or similar) and if your new scripts don't take care of what the deafults do, then you'll have problems
If you have them, try moving them to a different directory and try logging in again.