diff --git a/src/java/com/threerings/presents/server/ClientManager.java b/src/java/com/threerings/presents/server/ClientManager.java index efe82ee96..e77be5931 100644 --- a/src/java/com/threerings/presents/server/ClientManager.java +++ b/src/java/com/threerings/presents/server/ClientManager.java @@ -342,7 +342,7 @@ public class ClientManager if (client != null) { Log.info("Resuming session [username=" + username + ", conn=" + conn + "]."); - client.resumeSession(conn); + client.resumeSession(req, conn); } else { Log.info("Session initiated [username=" + username + diff --git a/src/java/com/threerings/presents/server/PresentsClient.java b/src/java/com/threerings/presents/server/PresentsClient.java index 056b9b03d..074c748d6 100644 --- a/src/java/com/threerings/presents/server/PresentsClient.java +++ b/src/java/com/threerings/presents/server/PresentsClient.java @@ -487,7 +487,7 @@ public class PresentsClient * Called by the client manager when a new connection arrives that authenticates as this * already established client. This must only be called from the congmr thread. */ - protected void resumeSession (Connection conn) + protected void resumeSession (AuthRequest req, Connection conn) { // check to see if we've already got a connection object, in which case it's probably stale Connection oldconn = getConnection(); @@ -497,6 +497,9 @@ public class PresentsClient oldconn.close(); } + // note our new auth request (so that we can deliver the proper bootstrap services) + _areq = req; + // start using the new connection setConnection(conn);