diff --git a/src/main/java/com/threerings/presents/peer/server/PeerNode.java b/src/main/java/com/threerings/presents/peer/server/PeerNode.java index 3f9e86bb6..cd0e3f610 100644 --- a/src/main/java/com/threerings/presents/peer/server/PeerNode.java +++ b/src/main/java/com/threerings/presents/peer/server/PeerNode.java @@ -213,14 +213,15 @@ public class PeerNode // documentation inherited from interface ClientObserver public void clientDidLogoff (Client client) { - if (nodeobj != null) { - String nodeName = getNodeName(); - for (ClientInfo clinfo : nodeobj.clients) { - _peermgr.clientLoggedOff(nodeName, clinfo); - } - - nodeobj.removeListener(_listener); + if (nodeobj == null) { + return; } + String nodeName = getNodeName(); + for (ClientInfo clinfo : nodeobj.clients) { + _peermgr.clientLoggedOff(nodeName, clinfo); + } + + nodeobj.removeListener(_listener); _peermgr.disconnectedFromPeer(this); _listener = null;