I'm not sure, but some update recently may have fixed it. It hasn't happened again accidentally, but I'll try to do it on purpose.
One other thing that may help, for me it only occurred after I had run killall5 in tty6 after a compiz crash.
killall5 logged out my session by killing gdm, then gdm restarted, I logged back in, firefox tried to restore, and it acted like killall5 ran again (quickly ending my session and sending me back to gdm)
I'm not sure, but some update recently may have fixed it. It hasn't happened again accidentally, but I'll try to do it on purpose.
One other thing that may help, for me it only occurred after I had run killall5 in tty6 after a compiz crash.
killall5 logged out my session by killing gdm, then gdm restarted, I logged back in, firefox tried to restore, and it acted like killall5 ran again (quickly ending my session and sending me back to gdm)