
Main._nWorkspacesChanged was racing with Main._checkWorkspaces. If _checkWorkspaces won the race, _workspaces was uninitialized. Because of this, _checkWorkspaces only noticed workspaces with windows on them, leading it to believe the last workspace wasn't empty, and added a new, empty workspace. https://bugzilla.gnome.org/show_bug.cgi?id=645343