diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs index a6894ff..2a405ac 100644 --- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs | |||
@@ -497,7 +497,18 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage | |||
497 | if (lookupAgent) | 497 | if (lookupAgent) |
498 | { | 498 | { |
499 | // Non-cached user agent lookup. | 499 | // Non-cached user agent lookup. |
500 | upd = PresenceService.GetAgent(toAgentID); | 500 | PresenceInfo[] presences = PresenceService.GetAgents(new string[] { toAgentID.ToString() }); |
501 | if (presences != null && presences.Length > 0) | ||
502 | { | ||
503 | foreach (PresenceInfo p in presences) | ||
504 | { | ||
505 | if (p.RegionID != UUID.Zero) | ||
506 | { | ||
507 | upd = p; | ||
508 | break; | ||
509 | } | ||
510 | } | ||
511 | } | ||
501 | 512 | ||
502 | if (upd != null) | 513 | if (upd != null) |
503 | { | 514 | { |