diff options
author | Melanie Thielker | 2008-11-09 01:16:42 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-11-09 01:16:42 +0000 |
commit | bdf9add8d1191b08bdaa9706484ac5da1f91af52 (patch) | |
tree | ae0a9c0ffb4dabd78a7286a73423a2c6dc4e0e2b /OpenSim/Region/ClientStack | |
parent | Mantis#2591. Thank you kindly, Ruud Lathrop for a patch that: (diff) | |
download | opensim-SC_OLD-bdf9add8d1191b08bdaa9706484ac5da1f91af52.zip opensim-SC_OLD-bdf9add8d1191b08bdaa9706484ac5da1f91af52.tar.gz opensim-SC_OLD-bdf9add8d1191b08bdaa9706484ac5da1f91af52.tar.bz2 opensim-SC_OLD-bdf9add8d1191b08bdaa9706484ac5da1f91af52.tar.xz |
Reintroduce transactionID to the parameter list for SendInstantMessage.
It is required by group IM and also for a proper implementation of item
give, group notice attachments and offline IM.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index bb6e62d..3a9c17e 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -1067,15 +1067,18 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1067 | /// </summary> | 1067 | /// </summary> |
1068 | public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp) | 1068 | public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, string fromName, byte dialog, uint timeStamp) |
1069 | { | 1069 | { |
1070 | SendInstantMessage(fromAgent, message, toAgent, fromName, dialog, timeStamp, false, new byte[0]); | 1070 | SendInstantMessage(fromAgent, message, toAgent, fromName, dialog, timeStamp, UUID.Zero, false, new byte[0]); |
1071 | } | 1071 | } |
1072 | 1072 | ||
1073 | /// <summary> | 1073 | /// <summary> |
1074 | /// Send an instant message to this client | 1074 | /// Send an instant message to this client |
1075 | /// </summary> | 1075 | /// </summary> |
1076 | // | ||
1077 | // Don't remove transaction ID! Groups and item gives need to set it! | ||
1078 | // | ||
1076 | public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, | 1079 | public void SendInstantMessage(UUID fromAgent, string message, UUID toAgent, |
1077 | string fromName, byte dialog, uint timeStamp, | 1080 | string fromName, byte dialog, uint timeStamp, |
1078 | bool fromGroup, byte[] binaryBucket) | 1081 | UUID transactionID, bool fromGroup, byte[] binaryBucket) |
1079 | { | 1082 | { |
1080 | if (((Scene)(m_scene)).ExternalChecks.ExternalChecksCanInstantMessage(fromAgent, toAgent)) | 1083 | if (((Scene)(m_scene)).ExternalChecks.ExternalChecksCanInstantMessage(fromAgent, toAgent)) |
1081 | { | 1084 | { |
@@ -1087,7 +1090,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1087 | msg.MessageBlock.FromAgentName = Utils.StringToBytes(fromName); | 1090 | msg.MessageBlock.FromAgentName = Utils.StringToBytes(fromName); |
1088 | msg.MessageBlock.Dialog = dialog; | 1091 | msg.MessageBlock.Dialog = dialog; |
1089 | msg.MessageBlock.FromGroup = fromGroup; | 1092 | msg.MessageBlock.FromGroup = fromGroup; |
1090 | msg.MessageBlock.ID = fromAgent ^ toAgent; | 1093 | if (transactionID == UUID.Zero) |
1094 | msg.MessageBlock.ID = fromAgent ^ toAgent; | ||
1095 | else | ||
1096 | msg.MessageBlock.ID = transactionID; | ||
1091 | msg.MessageBlock.Offline = 0; | 1097 | msg.MessageBlock.Offline = 0; |
1092 | msg.MessageBlock.ParentEstateID = 0; | 1098 | msg.MessageBlock.ParentEstateID = 0; |
1093 | msg.MessageBlock.Position = new Vector3(); | 1099 | msg.MessageBlock.Position = new Vector3(); |