From 68a60d83f4e121176dee66c1485b7f8874626768 Mon Sep 17 00:00:00 2001 From: Michael Bayne Date: Thu, 14 Jun 2007 18:15:02 +0000 Subject: [PATCH] The Flash client seems to be sending a message just as it's (or possibly even after it's) logging off which comes in after we've cleared out the client object and causes annoyance. Now we drop the message and we'll log a notice for the time being. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4735 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- .../com/threerings/presents/server/PresentsClient.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/java/com/threerings/presents/server/PresentsClient.java b/src/java/com/threerings/presents/server/PresentsClient.java index e0485e5c8..ecb0c0867 100644 --- a/src/java/com/threerings/presents/server/PresentsClient.java +++ b/src/java/com/threerings/presents/server/PresentsClient.java @@ -904,8 +904,15 @@ public class PresentsClient ForwardEventRequest req = (ForwardEventRequest)msg; DEvent fevt = req.getEvent(); + // freak not out if a message arrives from a client just after their session ended + ClientObject clobj = client.getClientObject(); + if (clobj == null) { + Log.info("Dropping event that arrived after client disconnected " + fevt + "."); + return; + } + // fill in the proper source oid - fevt.setSourceOid(client.getClientObject().getOid()); + fevt.setSourceOid(clobj.getOid()); // Log.info("Forwarding event [client=" + client + ", event=" + fevt + "].");