From 33fbff4aba5beff90f941dda47617a34fd7a87a2 Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Thu, 28 Jun 2007 06:37:17 +0000 Subject: [PATCH] getPresentPlayer() fails after the game is ended because _playerOids is cleared out. Use the caller's name instead. git-svn-id: svn+ssh://src.earth.threerings.net/vilya/trunk@337 c613c5cb-e716-0410-b11b-feb51c14d237 --- src/java/com/threerings/ezgame/server/EZGameManager.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/java/com/threerings/ezgame/server/EZGameManager.java b/src/java/com/threerings/ezgame/server/EZGameManager.java index 4197a5fb..7e8819bb 100644 --- a/src/java/com/threerings/ezgame/server/EZGameManager.java +++ b/src/java/com/threerings/ezgame/server/EZGameManager.java @@ -446,12 +446,14 @@ public class EZGameManager extends GameManager protected void validateUser (ClientObject caller) throws InvocationException { + BodyObject body = (BodyObject)caller; + switch (getMatchType()) { case GameConfig.PARTY: return; // always validate. default: - if (getPresentPlayerIndex(caller.getOid()) == -1) { + if (getPlayerIndex(body.getVisibleName()) == -1) { throw new InvocationException(InvocationCodes.ACCESS_DENIED); } return;