Mercurial > hg > RemoteEditor > REPSessionManager
diff rep/SessionManager.java @ 341:a9a740e685fa
remove session using QUIT_2_ACK
author | kono |
---|---|
date | Mon, 13 Oct 2008 03:05:53 +0900 |
parents | 5ba5b7a9761b |
children | 21ad256c25c2 |
line wrap: on
line diff
--- a/rep/SessionManager.java Sun Oct 12 20:03:47 2008 +0900 +++ b/rep/SessionManager.java Mon Oct 13 03:05:53 2008 +0900 @@ -625,10 +625,20 @@ public void remove(Editor editor) { + Session s0 = null; + editorList.remove(editor); for(Session s:sessionList) { - s.deleteForwarder(editor); + if (s.deleteForwarder(editor)) { + if (editor.getEID()==0) s0=s; + } } - //assert(false); + if (s0!=null) removeSession(s0); + updateGUI(); + } + + private void removeSession(Session s0) { + sessionList.remove(s0); + // send UPDATE to all the session manager } public void setParentPort(int port) {