-
Tom Evans authored
The connection close listener initiates a presence broadcast to advertise its "unavailable" status. The current connection must be marked closed before this occurs, so the presence stanza will not be delivered to the newly closed connection. Note that the synchronized block alone does not accomplish this because the presence broadcast is delivered via that same thread that is currently closing the connection, thus it already possesses the sync object lock. Also, note that the SessionManager should exclude the originating JID when sending presence broadcasts to the user's other available session(s).
4c4949eb