Maybe we should tweak the comment a bit: the problem isn't that we try to close the working set again (that's actually a no-op, since it's already closed).  The actual problem (I think) is that _before_ the no-op 2nd close-all, we save the working set state a 2nd time, overwriting the original good copy with an empty list.

So maybe we could say something like ..."so the following _loadProject() call won't run the 'beforeProjectClose' event a second time on the original project, which is now partially torn down (see #6574)"