We can be disconnected because of server reasons, not just because someone clicked the disconnect button. Make sure we clean up the reference and get a proper state in those cases as well.