aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie2009-11-23 04:24:58 +0000
committerMelanie2009-11-23 04:24:58 +0000
commitdf121a7cd065cc067818f6a39a44ddaaab647fec (patch)
tree5cc0e157ff3aefad066c07a1ebea2ae4b1ebdbe4 /OpenSim/Region
parentMerge branch 'master' into careminster (diff)
parent* Adds a modicum of additional checking to the Inventory Service (MySQL only) (diff)
downloadopensim-SC_OLD-df121a7cd065cc067818f6a39a44ddaaab647fec.zip
opensim-SC_OLD-df121a7cd065cc067818f6a39a44ddaaab647fec.tar.gz
opensim-SC_OLD-df121a7cd065cc067818f6a39a44ddaaab647fec.tar.bz2
opensim-SC_OLD-df121a7cd065cc067818f6a39a44ddaaab647fec.tar.xz
Merge branch 'master' into careminster
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs325
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs8
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs6
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveUtils.cs8
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs6
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs8
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Alerts/DeadlockAlert.cs31
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/IAlert.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/IMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/AgentCountMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ChildAgentCountMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/EventFrameMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/GCMemoryMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LandFrameMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LastFrameTimeMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ObjectCountMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PWSMemoryMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsFrameMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsUpdateFrameMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ThreadCountMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/TotalFrameMonitor.cs29
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandObject.cs2
-rw-r--r--OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs16
-rw-r--r--OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs22
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs43
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs25
-rw-r--r--OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs4
-rw-r--r--OpenSim/Region/Physics/OdePlugin/ODEPrim.cs29
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs13
-rw-r--r--OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs4
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs24
34 files changed, 908 insertions, 109 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index c914d81..47251b7 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -1266,10 +1266,10 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1266 // 1266 //
1267 if (totalItems == 0 && totalFolders == 0) 1267 if (totalItems == 0 && totalFolders == 0)
1268 currentPacket = CreateInventoryDescendentsPacket(ownerID, folderID, version, items.Count + folders.Count, 0, 0); 1268 currentPacket = CreateInventoryDescendentsPacket(ownerID, folderID, version, items.Count + folders.Count, 0, 0);
1269 1269
1270 // To preserve SL compatibility, we will NOT combine folders and items in one packet 1270 // To preserve SL compatibility, we will NOT combine folders and items in one packet
1271 // 1271 //
1272 while(itemsSent < totalItems || foldersSent < totalFolders) 1272 while (itemsSent < totalItems || foldersSent < totalFolders)
1273 { 1273 {
1274 if (currentPacket == null) // Start a new packet 1274 if (currentPacket == null) // Start a new packet
1275 { 1275 {
@@ -1289,7 +1289,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1289 1289
1290 if (foldersToSend-- > 0) 1290 if (foldersToSend-- > 0)
1291 currentPacket.FolderData[foldersSent % MAX_FOLDERS_PER_PACKET] = CreateFolderDataBlock(folders[foldersSent++]); 1291 currentPacket.FolderData[foldersSent % MAX_FOLDERS_PER_PACKET] = CreateFolderDataBlock(folders[foldersSent++]);
1292 else if(itemsToSend-- > 0) 1292 else if (itemsToSend-- > 0)
1293 currentPacket.ItemData[itemsSent % MAX_ITEMS_PER_PACKET] = CreateItemDataBlock(items[itemsSent++]); 1293 currentPacket.ItemData[itemsSent % MAX_ITEMS_PER_PACKET] = CreateItemDataBlock(items[itemsSent++]);
1294 else 1294 else
1295 { 1295 {
@@ -2043,7 +2043,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2043 packet.AgentData.SessionID = SessionId; 2043 packet.AgentData.SessionID = SessionId;
2044 2044
2045 packet.Effect = effectBlocks; 2045 packet.Effect = effectBlocks;
2046 2046
2047 OutPacket(packet, ThrottleOutPacketType.State); 2047 OutPacket(packet, ThrottleOutPacketType.State);
2048 } 2048 }
2049 2049
@@ -2742,7 +2742,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2742 } 2742 }
2743 llsd.Add("GroupData", GroupData); 2743 llsd.Add("GroupData", GroupData);
2744 llsd.Add("NewGroupData", NewGroupData); 2744 llsd.Add("NewGroupData", NewGroupData);
2745 2745
2746 IEventQueue eq = this.Scene.RequestModuleInterface<IEventQueue>(); 2746 IEventQueue eq = this.Scene.RequestModuleInterface<IEventQueue>();
2747 if (eq != null) 2747 if (eq != null)
2748 { 2748 {
@@ -4295,11 +4295,23 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4295 AddLocalPacketHandler(PacketType.AgentWearablesRequest, HandlerAgentWearablesRequest); 4295 AddLocalPacketHandler(PacketType.AgentWearablesRequest, HandlerAgentWearablesRequest);
4296 AddLocalPacketHandler(PacketType.AgentSetAppearance, HandlerAgentSetAppearance); 4296 AddLocalPacketHandler(PacketType.AgentSetAppearance, HandlerAgentSetAppearance);
4297 AddLocalPacketHandler(PacketType.AgentIsNowWearing, HandlerAgentIsNowWearing); 4297 AddLocalPacketHandler(PacketType.AgentIsNowWearing, HandlerAgentIsNowWearing);
4298 AddLocalPacketHandler(PacketType.RezSingleAttachmentFromInv, HandlerRezSingleAttachmentFromInv);
4299 AddLocalPacketHandler(PacketType.RezMultipleAttachmentsFromInv, HandleRezMultipleAttachmentsFromInv);
4300 AddLocalPacketHandler(PacketType.DetachAttachmentIntoInv, HandleDetachAttachmentIntoInv);
4301 AddLocalPacketHandler(PacketType.ObjectAttach, HandleObjectAttach);
4302 AddLocalPacketHandler(PacketType.ObjectDetach, HandleObjectDetach);
4303 AddLocalPacketHandler(PacketType.ObjectDrop, HandleObjectDrop);
4304 AddLocalPacketHandler(PacketType.SetAlwaysRun, HandleSetAlwaysRun);
4305 AddLocalPacketHandler(PacketType.CompleteAgentMovement, HandleCompleteAgentMovement);
4306 AddLocalPacketHandler(PacketType.AgentAnimation, HandleAgentAnimation);
4307 AddLocalPacketHandler(PacketType.AgentRequestSit, HandleAgentRequestSit);
4308 AddLocalPacketHandler(PacketType.AgentSit, HandleAgentSit);
4309 AddLocalPacketHandler(PacketType.SoundTrigger, HandleSoundTrigger);
4298 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer); 4310 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer);
4299 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer); 4311 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer);
4300 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer); 4312 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer);
4301 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer); 4313 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer);
4302 //AddLocalPacketHandler(PacketType.ChatFromViewer, HandleChatFromViewer); 4314
4303 } 4315 }
4304 4316
4305 #region Packet Handlers 4317 #region Packet Handlers
@@ -4957,6 +4969,281 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4957 return true; 4969 return true;
4958 } 4970 }
4959 4971
4972 private bool HandlerRezSingleAttachmentFromInv(IClientAPI sender, Packet Pack)
4973 {
4974 RezSingleAttachmentFromInv handlerRezSingleAttachment = OnRezSingleAttachmentFromInv;
4975 if (handlerRezSingleAttachment != null)
4976 {
4977 RezSingleAttachmentFromInvPacket rez = (RezSingleAttachmentFromInvPacket)Pack;
4978
4979 #region Packet Session and User Check
4980 if (m_checkPackets)
4981 {
4982 if (rez.AgentData.SessionID != SessionId ||
4983 rez.AgentData.AgentID != AgentId)
4984 return true;
4985 }
4986 #endregion
4987
4988 handlerRezSingleAttachment(this, rez.ObjectData.ItemID,
4989 rez.ObjectData.AttachmentPt);
4990 }
4991
4992 return true;
4993 }
4994
4995 private bool HandleRezMultipleAttachmentsFromInv(IClientAPI sender, Packet Pack)
4996 {
4997 RezMultipleAttachmentsFromInv handlerRezMultipleAttachments = OnRezMultipleAttachmentsFromInv;
4998 if (handlerRezMultipleAttachments != null)
4999 {
5000 RezMultipleAttachmentsFromInvPacket rez = (RezMultipleAttachmentsFromInvPacket)Pack;
5001 handlerRezMultipleAttachments(this, rez.HeaderData,
5002 rez.ObjectData);
5003 }
5004
5005 return true;
5006 }
5007
5008 private bool HandleDetachAttachmentIntoInv(IClientAPI sender, Packet Pack)
5009 {
5010 UUIDNameRequest handlerDetachAttachmentIntoInv = OnDetachAttachmentIntoInv;
5011 if (handlerDetachAttachmentIntoInv != null)
5012 {
5013 DetachAttachmentIntoInvPacket detachtoInv = (DetachAttachmentIntoInvPacket)Pack;
5014
5015 #region Packet Session and User Check
5016 // UNSUPPORTED ON THIS PACKET
5017 #endregion
5018
5019 UUID itemID = detachtoInv.ObjectData.ItemID;
5020 // UUID ATTACH_agentID = detachtoInv.ObjectData.AgentID;
5021
5022 handlerDetachAttachmentIntoInv(itemID, this);
5023 }
5024 return true;
5025 }
5026
5027 private bool HandleObjectAttach(IClientAPI sender, Packet Pack)
5028 {
5029 if (OnObjectAttach != null)
5030 {
5031 ObjectAttachPacket att = (ObjectAttachPacket)Pack;
5032
5033 #region Packet Session and User Check
5034 if (m_checkPackets)
5035 {
5036 if (att.AgentData.SessionID != SessionId ||
5037 att.AgentData.AgentID != AgentId)
5038 return true;
5039 }
5040 #endregion
5041
5042 ObjectAttach handlerObjectAttach = OnObjectAttach;
5043
5044 if (handlerObjectAttach != null)
5045 {
5046 if (att.ObjectData.Length > 0)
5047 {
5048 handlerObjectAttach(this, att.ObjectData[0].ObjectLocalID, att.AgentData.AttachmentPoint, att.ObjectData[0].Rotation, false);
5049 }
5050 }
5051 }
5052 return true;
5053 }
5054
5055 private bool HandleObjectDetach(IClientAPI sender, Packet Pack)
5056 {
5057 ObjectDetachPacket dett = (ObjectDetachPacket)Pack;
5058
5059 #region Packet Session and User Check
5060 if (m_checkPackets)
5061 {
5062 if (dett.AgentData.SessionID != SessionId ||
5063 dett.AgentData.AgentID != AgentId)
5064 return true;
5065 }
5066 #endregion
5067
5068 for (int j = 0; j < dett.ObjectData.Length; j++)
5069 {
5070 uint obj = dett.ObjectData[j].ObjectLocalID;
5071 ObjectDeselect handlerObjectDetach = OnObjectDetach;
5072 if (handlerObjectDetach != null)
5073 {
5074 handlerObjectDetach(obj, this);
5075 }
5076
5077 }
5078 return true;
5079 }
5080
5081 private bool HandleObjectDrop(IClientAPI sender, Packet Pack)
5082 {
5083 ObjectDropPacket dropp = (ObjectDropPacket)Pack;
5084
5085 #region Packet Session and User Check
5086 if (m_checkPackets)
5087 {
5088 if (dropp.AgentData.SessionID != SessionId ||
5089 dropp.AgentData.AgentID != AgentId)
5090 return true;
5091 }
5092 #endregion
5093
5094 for (int j = 0; j < dropp.ObjectData.Length; j++)
5095 {
5096 uint obj = dropp.ObjectData[j].ObjectLocalID;
5097 ObjectDrop handlerObjectDrop = OnObjectDrop;
5098 if (handlerObjectDrop != null)
5099 {
5100 handlerObjectDrop(obj, this);
5101 }
5102 }
5103 return true;
5104 }
5105
5106 private bool HandleSetAlwaysRun(IClientAPI sender, Packet Pack)
5107 {
5108 SetAlwaysRunPacket run = (SetAlwaysRunPacket)Pack;
5109
5110 #region Packet Session and User Check
5111 if (m_checkPackets)
5112 {
5113 if (run.AgentData.SessionID != SessionId ||
5114 run.AgentData.AgentID != AgentId)
5115 return true;
5116 }
5117 #endregion
5118
5119 SetAlwaysRun handlerSetAlwaysRun = OnSetAlwaysRun;
5120 if (handlerSetAlwaysRun != null)
5121 handlerSetAlwaysRun(this, run.AgentData.AlwaysRun);
5122
5123 return true;
5124 }
5125
5126 private bool HandleCompleteAgentMovement(IClientAPI sender, Packet Pack)
5127 {
5128 GenericCall2 handlerCompleteMovementToRegion = OnCompleteMovementToRegion;
5129 if (handlerCompleteMovementToRegion != null)
5130 {
5131 handlerCompleteMovementToRegion();
5132 }
5133 handlerCompleteMovementToRegion = null;
5134
5135 return true;
5136 }
5137
5138 private bool HandleAgentAnimation(IClientAPI sender, Packet Pack)
5139 {
5140 AgentAnimationPacket AgentAni = (AgentAnimationPacket)Pack;
5141
5142 #region Packet Session and User Check
5143 if (m_checkPackets)
5144 {
5145 if (AgentAni.AgentData.SessionID != SessionId ||
5146 AgentAni.AgentData.AgentID != AgentId)
5147 return true;
5148 }
5149 #endregion
5150
5151 StartAnim handlerStartAnim = null;
5152 StopAnim handlerStopAnim = null;
5153
5154 for (int i = 0; i < AgentAni.AnimationList.Length; i++)
5155 {
5156 if (AgentAni.AnimationList[i].StartAnim)
5157 {
5158 handlerStartAnim = OnStartAnim;
5159 if (handlerStartAnim != null)
5160 {
5161 handlerStartAnim(this, AgentAni.AnimationList[i].AnimID);
5162 }
5163 }
5164 else
5165 {
5166 handlerStopAnim = OnStopAnim;
5167 if (handlerStopAnim != null)
5168 {
5169 handlerStopAnim(this, AgentAni.AnimationList[i].AnimID);
5170 }
5171 }
5172 }
5173 return true;
5174 }
5175
5176 private bool HandleAgentRequestSit(IClientAPI sender, Packet Pack)
5177 {
5178 if (OnAgentRequestSit != null)
5179 {
5180 AgentRequestSitPacket agentRequestSit = (AgentRequestSitPacket)Pack;
5181
5182 #region Packet Session and User Check
5183 if (m_checkPackets)
5184 {
5185 if (agentRequestSit.AgentData.SessionID != SessionId ||
5186 agentRequestSit.AgentData.AgentID != AgentId)
5187 return true;
5188 }
5189 #endregion
5190
5191 AgentRequestSit handlerAgentRequestSit = OnAgentRequestSit;
5192 if (handlerAgentRequestSit != null)
5193 handlerAgentRequestSit(this, agentRequestSit.AgentData.AgentID,
5194 agentRequestSit.TargetObject.TargetID, agentRequestSit.TargetObject.Offset);
5195 }
5196 return true;
5197 }
5198
5199 private bool HandleAgentSit(IClientAPI sender, Packet Pack)
5200 {
5201 if (OnAgentSit != null)
5202 {
5203 AgentSitPacket agentSit = (AgentSitPacket)Pack;
5204
5205 #region Packet Session and User Check
5206 if (m_checkPackets)
5207 {
5208 if (agentSit.AgentData.SessionID != SessionId ||
5209 agentSit.AgentData.AgentID != AgentId)
5210 return true;
5211 }
5212 #endregion
5213
5214 AgentSit handlerAgentSit = OnAgentSit;
5215 if (handlerAgentSit != null)
5216 {
5217 OnAgentSit(this, agentSit.AgentData.AgentID);
5218 }
5219 }
5220 return true;
5221 }
5222
5223 private bool HandleSoundTrigger(IClientAPI sender, Packet Pack)
5224 {
5225 SoundTriggerPacket soundTriggerPacket = (SoundTriggerPacket)Pack;
5226
5227 #region Packet Session and User Check
5228 if (m_checkPackets)
5229 {
5230 // UNSUPPORTED ON THIS PACKET
5231 }
5232 #endregion
5233
5234 SoundTrigger handlerSoundTrigger = OnSoundTrigger;
5235 if (handlerSoundTrigger != null)
5236 {
5237 handlerSoundTrigger(soundTriggerPacket.SoundData.SoundID, soundTriggerPacket.SoundData.OwnerID,
5238 soundTriggerPacket.SoundData.ObjectID, soundTriggerPacket.SoundData.ParentID,
5239 soundTriggerPacket.SoundData.Gain, soundTriggerPacket.SoundData.Position,
5240 soundTriggerPacket.SoundData.Handle);
5241
5242 }
5243 return true;
5244 }
5245
5246
4960 #endregion Packet Handlers 5247 #endregion Packet Handlers
4961 5248
4962 public void SendScriptQuestion(UUID taskID, string taskName, string ownerName, UUID itemID, int question) 5249 public void SendScriptQuestion(UUID taskID, string taskName, string ownerName, UUID itemID, int question)
@@ -5448,8 +5735,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5448 return; 5735 return;
5449 } 5736 }
5450 5737
5451
5452
5453 // Main packet processing conditional 5738 // Main packet processing conditional
5454 switch (Pack.Type) 5739 switch (Pack.Type)
5455 { 5740 {
@@ -5475,7 +5760,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5475 } 5760 }
5476 5761
5477 break; 5762 break;
5478 5763
5479 case PacketType.ChatFromViewer: 5764 case PacketType.ChatFromViewer:
5480 ChatFromViewerPacket inchatpack = (ChatFromViewerPacket)Pack; 5765 ChatFromViewerPacket inchatpack = (ChatFromViewerPacket)Pack;
5481 5766
@@ -5514,7 +5799,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5514 handlerChatFromClient(this, args); 5799 handlerChatFromClient(this, args);
5515 } 5800 }
5516 break; 5801 break;
5517 5802
5518 case PacketType.AvatarPropertiesUpdate: 5803 case PacketType.AvatarPropertiesUpdate:
5519 AvatarPropertiesUpdatePacket avatarProps = (AvatarPropertiesUpdatePacket)Pack; 5804 AvatarPropertiesUpdatePacket avatarProps = (AvatarPropertiesUpdatePacket)Pack;
5520 5805
@@ -5542,7 +5827,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5542 handlerUpdateAvatarProperties(this, UserProfile); 5827 handlerUpdateAvatarProperties(this, UserProfile);
5543 } 5828 }
5544 break; 5829 break;
5545 5830
5546 case PacketType.ScriptDialogReply: 5831 case PacketType.ScriptDialogReply:
5547 ScriptDialogReplyPacket rdialog = (ScriptDialogReplyPacket)Pack; 5832 ScriptDialogReplyPacket rdialog = (ScriptDialogReplyPacket)Pack;
5548 5833
@@ -5573,7 +5858,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5573 } 5858 }
5574 5859
5575 break; 5860 break;
5576 5861
5577 case PacketType.ImprovedInstantMessage: 5862 case PacketType.ImprovedInstantMessage:
5578 ImprovedInstantMessagePacket msgpack = (ImprovedInstantMessagePacket)Pack; 5863 ImprovedInstantMessagePacket msgpack = (ImprovedInstantMessagePacket)Pack;
5579 5864
@@ -5607,7 +5892,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5607 handlerInstantMessage(this, im); 5892 handlerInstantMessage(this, im);
5608 } 5893 }
5609 break; 5894 break;
5610 5895
5611 case PacketType.AcceptFriendship: 5896 case PacketType.AcceptFriendship:
5612 AcceptFriendshipPacket afriendpack = (AcceptFriendshipPacket)Pack; 5897 AcceptFriendshipPacket afriendpack = (AcceptFriendshipPacket)Pack;
5613 5898
@@ -5680,7 +5965,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5680 handlerTerminateFriendship(this, listOwnerAgentID, exFriendID); 5965 handlerTerminateFriendship(this, listOwnerAgentID, exFriendID);
5681 } 5966 }
5682 break; 5967 break;
5683 5968
5684 case PacketType.RezObject: 5969 case PacketType.RezObject:
5685 RezObjectPacket rezPacket = (RezObjectPacket)Pack; 5970 RezObjectPacket rezPacket = (RezObjectPacket)Pack;
5686 5971
@@ -5735,7 +6020,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5735 6020
5736 } 6021 }
5737 break; 6022 break;
5738 6023
5739 case PacketType.ModifyLand: 6024 case PacketType.ModifyLand:
5740 ModifyLandPacket modify = (ModifyLandPacket)Pack; 6025 ModifyLandPacket modify = (ModifyLandPacket)Pack;
5741 6026
@@ -5867,8 +6152,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5867 } 6152 }
5868 } 6153 }
5869 break; 6154 break;
5870*/ 6155
5871 #endregion
5872 case PacketType.RezSingleAttachmentFromInv: 6156 case PacketType.RezSingleAttachmentFromInv:
5873 RezSingleAttachmentFromInv handlerRezSingleAttachment = OnRezSingleAttachmentFromInv; 6157 RezSingleAttachmentFromInv handlerRezSingleAttachment = OnRezSingleAttachmentFromInv;
5874 if (handlerRezSingleAttachment != null) 6158 if (handlerRezSingleAttachment != null)
@@ -6118,7 +6402,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
6118 6402
6119 } 6403 }
6120 break; 6404 break;
6121 6405 */
6406 #endregion
6122 case PacketType.AvatarPickerRequest: 6407 case PacketType.AvatarPickerRequest:
6123 AvatarPickerRequestPacket avRequestQuery = (AvatarPickerRequestPacket)Pack; 6408 AvatarPickerRequestPacket avRequestQuery = (AvatarPickerRequestPacket)Pack;
6124 6409
@@ -10175,7 +10460,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
10175 Utils.BytesToString(avatarInterestUpdate.PropertiesData.SkillsText), 10460 Utils.BytesToString(avatarInterestUpdate.PropertiesData.SkillsText),
10176 Utils.BytesToString(avatarInterestUpdate.PropertiesData.LanguagesText)); 10461 Utils.BytesToString(avatarInterestUpdate.PropertiesData.LanguagesText));
10177 break; 10462 break;
10178 10463
10179 case PacketType.GrantUserRights: 10464 case PacketType.GrantUserRights:
10180 GrantUserRightsPacket GrantUserRights = 10465 GrantUserRightsPacket GrantUserRights =
10181 (GrantUserRightsPacket)Pack; 10466 (GrantUserRightsPacket)Pack;
@@ -10194,7 +10479,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
10194 GrantUserRights.Rights[0].AgentRelated, 10479 GrantUserRights.Rights[0].AgentRelated,
10195 GrantUserRights.Rights[0].RelatedRights); 10480 GrantUserRights.Rights[0].RelatedRights);
10196 break; 10481 break;
10197 10482
10198 case PacketType.PlacesQuery: 10483 case PacketType.PlacesQuery:
10199 PlacesQueryPacket placesQueryPacket = 10484 PlacesQueryPacket placesQueryPacket =
10200 (PlacesQueryPacket)Pack; 10485 (PlacesQueryPacket)Pack;
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index bb4e032..d6a82ef 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -395,7 +395,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
395 395
396 // if it leaves, we want to know, too 396 // if it leaves, we want to know, too
397 client.OnLogout += OnLogout; 397 client.OnLogout += OnLogout;
398 client.OnGrantUserRights += GrantUserFriendRights; 398 client.OnGrantUserRights += GrantUserFriendRights;
399 399
400 } 400 }
401 401
@@ -1112,8 +1112,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
1112 } 1112 }
1113 private void GrantUserFriendRights(IClientAPI remoteClient, UUID requester, UUID target, int rights) 1113 private void GrantUserFriendRights(IClientAPI remoteClient, UUID requester, UUID target, int rights)
1114 { 1114 {
1115 ((Scene)remoteClient.Scene).CommsManager.UpdateUserFriendPerms(requester, target, (uint)rights); 1115 ((Scene)remoteClient.Scene).CommsManager.UpdateUserFriendPerms(requester, target, (uint)rights);
1116 } 1116 }
1117 1117
1118 public List<FriendListItem> GetUserFriends(UUID agentID) 1118 public List<FriendListItem> GetUserFriends(UUID agentID)
1119 { 1119 {
@@ -1126,6 +1126,6 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
1126 1126
1127 return fl; 1127 return fl;
1128 } 1128 }
1129 } 1129 }
1130 #endregion 1130 #endregion
1131} 1131}
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
index aafcfa2..9e76d79 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
@@ -136,7 +136,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
136 successfulAssetRestores); 136 successfulAssetRestores);
137 } 137 }
138 else if (filePath.StartsWith(ArchiveConstants.INVENTORY_PATH)) 138 else if (filePath.StartsWith(ArchiveConstants.INVENTORY_PATH))
139 { 139 {
140 InventoryFolderBase foundFolder 140 InventoryFolderBase foundFolder
141 = ReplicateArchivePathToUserInventory( 141 = ReplicateArchivePathToUserInventory(
142 filePath, TarArchiveReader.TarEntryType.TYPE_DIRECTORY == entryType, 142 filePath, TarArchiveReader.TarEntryType.TYPE_DIRECTORY == entryType,
@@ -254,7 +254,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
254 254
255 string newFolderName = rawDirsToCreate[i].Remove(identicalNameIdentifierIndex); 255 string newFolderName = rawDirsToCreate[i].Remove(identicalNameIdentifierIndex);
256 256
257 newFolderName = InventoryArchiveUtils.UnescapeArchivePath(newFolderName); 257 newFolderName = InventoryArchiveUtils.UnescapeArchivePath(newFolderName);
258 UUID newFolderId = UUID.Random(); 258 UUID newFolderId = UUID.Random();
259 259
260 // Asset type has to be Unknown here rather than Folder, otherwise the created folder can't be 260 // Asset type has to be Unknown here rather than Folder, otherwise the created folder can't be
@@ -352,7 +352,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
352 item.Folder = loadFolder.ID; 352 item.Folder = loadFolder.ID;
353 353
354 //m_userInfo.AddItem(item); 354 //m_userInfo.AddItem(item);
355 m_scene.InventoryService.AddItem(item); 355 m_scene.InventoryService.AddItem(item);
356 356
357 return item; 357 return item;
358 } 358 }
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveUtils.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveUtils.cs
index 247cee4..47b18d8 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveUtils.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveUtils.cs
@@ -116,7 +116,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
116 return startFolder; 116 return startFolder;
117 117
118 string[] components = SplitEscapedPath(path); 118 string[] components = SplitEscapedPath(path);
119 components[0] = UnescapePath(components[0]); 119 components[0] = UnescapePath(components[0]);
120 120
121 //string[] components = path.Split(new string[] { PATH_DELIMITER.ToString() }, 2, StringSplitOptions.None); 121 //string[] components = path.Split(new string[] { PATH_DELIMITER.ToString() }, 2, StringSplitOptions.None);
122 122
@@ -306,17 +306,17 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
306 public static string EscapeArchivePath(string path) 306 public static string EscapeArchivePath(string path)
307 { 307 {
308 // Only encode ampersands (for escaping anything) and / (since this is used as general dir separator). 308 // Only encode ampersands (for escaping anything) and / (since this is used as general dir separator).
309 return path.Replace("&", "&amp;").Replace("/", "&#47;"); 309 return path.Replace("&", "&amp;").Replace("/", "&#47;");
310 } 310 }
311 311
312 /// <summary> 312 /// <summary>
313 /// Unescape an archive path. 313 /// Unescape an archive path.
314 /// </summary> 314 /// </summary>
315 /// <param name="path"></param> 315 /// <param name="path"></param>
316 /// <returns></returns> 316 /// <returns></returns>
317 public static string UnescapeArchivePath(string path) 317 public static string UnescapeArchivePath(string path)
318 { 318 {
319 return path.Replace("&#47;", "/").Replace("&amp;", "&"); 319 return path.Replace("&#47;", "/").Replace("&amp;", "&");
320 } 320 }
321 } 321 }
322} \ No newline at end of file 322} \ No newline at end of file
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
index bbb49f6..6e11f36 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
@@ -270,7 +270,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
270 inventoryFolder.Name, inventoryFolder.ID, m_invPath); 270 inventoryFolder.Name, inventoryFolder.ID, m_invPath);
271 271
272 //recurse through all dirs getting dirs and files 272 //recurse through all dirs getting dirs and files
273 SaveInvFolder(inventoryFolder, ArchiveConstants.INVENTORY_PATH, !foundStar); 273 SaveInvFolder(inventoryFolder, ArchiveConstants.INVENTORY_PATH, !foundStar);
274 } 274 }
275 else if (inventoryItem != null) 275 else if (inventoryItem != null)
276 { 276 {
@@ -278,7 +278,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
278 "[INVENTORY ARCHIVER]: Found item {0} {1} at {2}", 278 "[INVENTORY ARCHIVER]: Found item {0} {1} at {2}",
279 inventoryItem.Name, inventoryItem.ID, m_invPath); 279 inventoryItem.Name, inventoryItem.ID, m_invPath);
280 280
281 SaveInvItem(inventoryItem, ArchiveConstants.INVENTORY_PATH); 281 SaveInvItem(inventoryItem, ArchiveConstants.INVENTORY_PATH);
282 } 282 }
283 else 283 else
284 { 284 {
@@ -288,7 +288,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
288 m_log.ErrorFormat("[INVENTORY ARCHIVER]: {0}", errorMessage); 288 m_log.ErrorFormat("[INVENTORY ARCHIVER]: {0}", errorMessage);
289 m_module.TriggerInventoryArchiveSaved( 289 m_module.TriggerInventoryArchiveSaved(
290 m_id, false, m_userInfo, m_invPath, m_saveStream, 290 m_id, false, m_userInfo, m_invPath, m_saveStream,
291 new Exception(errorMessage)); 291 new Exception(errorMessage));
292 return; 292 return;
293 } 293 }
294 294
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs
index f8a010c..7927352 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs
@@ -133,7 +133,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
133 InventoryFolderBase objsFolder 133 InventoryFolderBase objsFolder
134 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, userId, "Objects"); 134 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, userId, "Objects");
135 item1.Folder = objsFolder.ID; 135 item1.Folder = objsFolder.ID;
136 scene.AddInventoryItem(userId, item1); 136 scene.AddInventoryItem(userId, item1);
137 137
138 MemoryStream archiveWriteStream = new MemoryStream(); 138 MemoryStream archiveWriteStream = new MemoryStream();
139 archiverModule.OnInventoryArchiveSaved += SaveCompleted; 139 archiverModule.OnInventoryArchiveSaved += SaveCompleted;
@@ -348,7 +348,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
348 InventoryFolderBase objsFolder 348 InventoryFolderBase objsFolder
349 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, userId, "Objects"); 349 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, userId, "Objects");
350 item1.Folder = objsFolder.ID; 350 item1.Folder = objsFolder.ID;
351 scene.AddInventoryItem(userId, item1); 351 scene.AddInventoryItem(userId, item1);
352 352
353 MemoryStream archiveWriteStream = new MemoryStream(); 353 MemoryStream archiveWriteStream = new MemoryStream();
354 archiverModule.OnInventoryArchiveSaved += SaveCompleted; 354 archiverModule.OnInventoryArchiveSaved += SaveCompleted;
@@ -356,7 +356,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
356 mre.Reset(); 356 mre.Reset();
357 archiverModule.ArchiveInventory( 357 archiverModule.ArchiveInventory(
358 Guid.NewGuid(), userFirstName, userLastName, "Objects", userPassword, archiveWriteStream); 358 Guid.NewGuid(), userFirstName, userLastName, "Objects", userPassword, archiveWriteStream);
359 mre.WaitOne(60000, false); 359 mre.WaitOne(60000, false);
360 360
361 // LOAD ITEM 361 // LOAD ITEM
362 MemoryStream archiveReadStream = new MemoryStream(archiveWriteStream.ToArray()); 362 MemoryStream archiveReadStream = new MemoryStream(archiveWriteStream.ToArray());
@@ -373,7 +373,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
373// "Loaded item non-uuid creator doesn't match that of the loading user"); 373// "Loaded item non-uuid creator doesn't match that of the loading user");
374 Assert.That( 374 Assert.That(
375 foundItem1.Name, Is.EqualTo(itemName), 375 foundItem1.Name, Is.EqualTo(itemName),
376 "Loaded item name doesn't match saved name"); 376 "Loaded item name doesn't match saved name");
377 } 377 }
378 378
379 /// <summary> 379 /// <summary>
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Alerts/DeadlockAlert.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Alerts/DeadlockAlert.cs
index b546ccb..b5b5cea 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Alerts/DeadlockAlert.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Alerts/DeadlockAlert.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.CoreModules.Framework.Monitoring.Monitors; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.CoreModules.Framework.Monitoring.Monitors;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Alerts 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Alerts
4{ 31{
@@ -22,7 +49,7 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring.Alerts
22 { 49 {
23 if (m_monitor.GetValue() > 60 * 1000) 50 if (m_monitor.GetValue() > 60 * 1000)
24 { 51 {
25 if(OnTriggerAlert != null) 52 if (OnTriggerAlert != null)
26 { 53 {
27 OnTriggerAlert(typeof (DeadlockAlert), 54 OnTriggerAlert(typeof (DeadlockAlert),
28 (int) (m_monitor.GetValue()/1000) + " second(s) since last frame processed.", true); 55 (int) (m_monitor.GetValue()/1000) + " second(s) since last frame processed.", true);
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/IAlert.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/IAlert.cs
index b533df9..5ea5a4f 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/IAlert.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/IAlert.cs
@@ -1,4 +1,31 @@
1using System; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring 30namespace OpenSim.Region.CoreModules.Framework.Monitoring
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/IMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/IMonitor.cs
index a51dccd..9f618cc 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/IMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/IMonitor.cs
@@ -1,4 +1,31 @@
1namespace OpenSim.Region.CoreModules.Framework.Monitoring 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28namespace OpenSim.Region.CoreModules.Framework.Monitoring
2{ 29{
3 interface IMonitor 30 interface IMonitor
4 { 31 {
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs
index 11aca99..d84f4ea 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/MonitorModule.cs
@@ -1,4 +1,31 @@
1using System.Collections; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System.Collections;
2using System.Collections.Generic; 29using System.Collections.Generic;
3using System.Reflection; 30using System.Reflection;
4using log4net; 31using log4net;
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/AgentCountMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/AgentCountMonitor.cs
index edc6e6b..4a2029e 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/AgentCountMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/AgentCountMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ChildAgentCountMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ChildAgentCountMonitor.cs
index afe6b79..4ab3edd 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ChildAgentCountMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ChildAgentCountMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/EventFrameMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/EventFrameMonitor.cs
index dec5a9e..356458d 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/EventFrameMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/EventFrameMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/GCMemoryMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/GCMemoryMonitor.cs
index cd67fea..aa2e9c0 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/GCMemoryMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/GCMemoryMonitor.cs
@@ -1,4 +1,31 @@
1using System; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LandFrameMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LandFrameMonitor.cs
index d883fc7..e1c36de 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LandFrameMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LandFrameMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LastFrameTimeMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LastFrameTimeMonitor.cs
index 36363f8..f21a3ae 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LastFrameTimeMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/LastFrameTimeMonitor.cs
@@ -1,4 +1,31 @@
1using System; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
2using OpenSim.Region.Framework.Scenes; 29using OpenSim.Region.Framework.Scenes;
3 30
4namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 31namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ObjectCountMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ObjectCountMonitor.cs
index dd9b19d..10804f9 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ObjectCountMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ObjectCountMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PWSMemoryMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PWSMemoryMonitor.cs
index 88f2938..5f6190c 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PWSMemoryMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PWSMemoryMonitor.cs
@@ -1,4 +1,31 @@
1using System; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsFrameMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsFrameMonitor.cs
index 4d62e4f..7c5bb0a 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsFrameMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsFrameMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsUpdateFrameMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsUpdateFrameMonitor.cs
index 91ac282..1894b3b 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsUpdateFrameMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/PhysicsUpdateFrameMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ThreadCountMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ThreadCountMonitor.cs
index 9300a93..63ddf07 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ThreadCountMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/ThreadCountMonitor.cs
@@ -1,4 +1,31 @@
1 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28
2namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 29namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
3{ 30{
4 class ThreadCountMonitor : IMonitor 31 class ThreadCountMonitor : IMonitor
diff --git a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/TotalFrameMonitor.cs b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/TotalFrameMonitor.cs
index dea1f94..c3942bf 100644
--- a/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/TotalFrameMonitor.cs
+++ b/OpenSim/Region/CoreModules/Framework/Monitoring/Monitors/TotalFrameMonitor.cs
@@ -1,4 +1,31 @@
1using OpenSim.Region.Framework.Scenes; 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenSim.Region.Framework.Scenes;
2 29
3namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors 30namespace OpenSim.Region.CoreModules.Framework.Monitoring.Monitors
4{ 31{
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
index 0bd225e..1fa8630 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
@@ -318,7 +318,7 @@ namespace OpenSim.Region.CoreModules.World.Land
318 } 318 }
319 319
320 public void SendLandUpdateToClient(bool snap_selection, IClientAPI remote_client) 320 public void SendLandUpdateToClient(bool snap_selection, IClientAPI remote_client)
321 { 321 {
322 SendLandProperties(0, snap_selection, 0, remote_client); 322 SendLandProperties(0, snap_selection, 0, remote_client);
323 } 323 }
324 324
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
index c790624..013a0ef 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -486,21 +486,21 @@ namespace OpenSim.Region.CoreModules.World.Permissions
486 } 486 }
487 protected bool IsFriendWithPerms(UUID user,UUID objectOwner) 487 protected bool IsFriendWithPerms(UUID user,UUID objectOwner)
488 { 488 {
489 489
490 if (user == UUID.Zero) 490 if (user == UUID.Zero)
491 return false; 491 return false;
492 492
493 if (m_friendsModule == null) 493 if (m_friendsModule == null)
494 return false; 494 return false;
495 495
496 List<FriendListItem> profile = m_friendsModule.GetUserFriends(user); 496 List<FriendListItem> profile = m_friendsModule.GetUserFriends(user);
497 497
498 foreach (FriendListItem item in profile) 498 foreach (FriendListItem item in profile)
499 { 499 {
500 if(item.Friend == objectOwner && (item.FriendPerms & (uint)FriendRights.CanModifyObjects) != 0) 500 if (item.Friend == objectOwner && (item.FriendPerms & (uint)FriendRights.CanModifyObjects) != 0)
501 return true; 501 return true;
502 } 502 }
503 return false; 503 return false;
504 } 504 }
505 505
506 protected bool IsEstateManager(UUID user) 506 protected bool IsEstateManager(UUID user)
diff --git a/OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs b/OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs
index 2230fba..30a95ce 100644
--- a/OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs
+++ b/OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs
@@ -39,7 +39,7 @@ namespace OpenSim.Region.Framework.Scenes.Animation
39 /// Handle all animation duties for a scene presence 39 /// Handle all animation duties for a scene presence
40 /// </summary> 40 /// </summary>
41 public class ScenePresenceAnimator 41 public class ScenePresenceAnimator
42 { 42 {
43 public AnimationSet Animations 43 public AnimationSet Animations
44 { 44 {
45 get { return m_animations; } 45 get { return m_animations; }
@@ -53,19 +53,19 @@ namespace OpenSim.Region.Framework.Scenes.Animation
53 { 53 {
54 get { return m_movementAnimation; } 54 get { return m_movementAnimation; }
55 } 55 }
56 protected string m_movementAnimation = "DEFAULT"; 56 protected string m_movementAnimation = "DEFAULT";
57 57
58 private int m_animTickFall; 58 private int m_animTickFall;
59 private int m_animTickJump; 59 private int m_animTickJump;
60 60
61 /// <value> 61 /// <value>
62 /// The scene presence that this animator applies to 62 /// The scene presence that this animator applies to
63 /// </value> 63 /// </value>
64 protected ScenePresence m_scenePresence; 64 protected ScenePresence m_scenePresence;
65 65
66 public ScenePresenceAnimator(ScenePresence sp) 66 public ScenePresenceAnimator(ScenePresence sp)
67 { 67 {
68 m_scenePresence = sp; 68 m_scenePresence = sp;
69 } 69 }
70 70
71 public void AddAnimation(UUID animID, UUID objectID) 71 public void AddAnimation(UUID animID, UUID objectID)
@@ -110,11 +110,11 @@ namespace OpenSim.Region.Framework.Scenes.Animation
110 return; 110 return;
111 111
112 RemoveAnimation(animID); 112 RemoveAnimation(animID);
113 } 113 }
114 114
115 public void ResetAnimations() 115 public void ResetAnimations()
116 { 116 {
117 m_animations.Clear(); 117 m_animations.Clear();
118 } 118 }
119 119
120 /// <summary> 120 /// <summary>
@@ -131,7 +131,7 @@ namespace OpenSim.Region.Framework.Scenes.Animation
131 anim, m_scenePresence.ControllingClient.NextAnimationSequenceNumber, UUID.Zero)) 131 anim, m_scenePresence.ControllingClient.NextAnimationSequenceNumber, UUID.Zero))
132 { 132 {
133 // 16384 is CHANGED_ANIMATION 133 // 16384 is CHANGED_ANIMATION
134 m_scenePresence.SendScriptEventToAttachments("changed", new Object[] { 16384 }); 134 m_scenePresence.SendScriptEventToAttachments("changed", new Object[] { 16384 });
135 SendAnimPack(); 135 SendAnimPack();
136 } 136 }
137 } 137 }
@@ -305,7 +305,7 @@ namespace OpenSim.Region.Framework.Scenes.Animation
305 #endregion Ground Movement 305 #endregion Ground Movement
306 306
307 return m_movementAnimation; 307 return m_movementAnimation;
308 } 308 }
309 309
310 /// <summary> 310 /// <summary>
311 /// Update the movement animation of this avatar according to its current state 311 /// Update the movement animation of this avatar according to its current state
@@ -391,7 +391,7 @@ namespace OpenSim.Region.Framework.Scenes.Animation
391 m_scenePresence.Scene.AssetService.Store(Animasset); 391 m_scenePresence.Scene.AssetService.Store(Animasset);
392 AddAnimation(Animasset.FullID, m_scenePresence.UUID); 392 AddAnimation(Animasset.FullID, m_scenePresence.UUID);
393 return anim; 393 return anim;
394 } 394 }
395 395
396 /// <summary> 396 /// <summary>
397 /// 397 ///
@@ -443,6 +443,6 @@ namespace OpenSim.Region.Framework.Scenes.Animation
443 m_animations.GetArrays(out animIDs, out sequenceNums, out objectIDs); 443 m_animations.GetArrays(out animIDs, out sequenceNums, out objectIDs);
444 444
445 SendAnimPack(animIDs, sequenceNums, objectIDs); 445 SendAnimPack(animIDs, sequenceNums, objectIDs);
446 } 446 }
447 } 447 }
448} \ No newline at end of file 448} \ No newline at end of file
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 5058457..4ffa1a2 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3470,6 +3470,49 @@ namespace OpenSim.Region.Framework.Scenes
3470 agent.startpos.Y = crossedBorder.BorderLine.Z - 1; 3470 agent.startpos.Y = crossedBorder.BorderLine.Z - 1;
3471 } 3471 }
3472 3472
3473 //Mitigate http://opensimulator.org/mantis/view.php?id=3522
3474 // Check if start position is outside of region
3475 // If it is, check the Z start position also.. if not, leave it alone.
3476 if (BordersLocked)
3477 {
3478 lock (EastBorders)
3479 {
3480 if (agent.startpos.X > EastBorders[0].BorderLine.Z)
3481 {
3482 m_log.Warn("FIX AGENT POSITION");
3483 agent.startpos.X = EastBorders[0].BorderLine.Z * 0.5f;
3484 if (agent.startpos.Z > 720)
3485 agent.startpos.Z = 720;
3486 }
3487 }
3488 lock (NorthBorders)
3489 {
3490 if (agent.startpos.Y > NorthBorders[0].BorderLine.Z)
3491 {
3492 m_log.Warn("FIX Agent POSITION");
3493 agent.startpos.Y = NorthBorders[0].BorderLine.Z * 0.5f;
3494 if (agent.startpos.Z > 720)
3495 agent.startpos.Z = 720;
3496 }
3497 }
3498 }
3499 else
3500 {
3501 if (agent.startpos.X > EastBorders[0].BorderLine.Z)
3502 {
3503 m_log.Warn("FIX AGENT POSITION");
3504 agent.startpos.X = EastBorders[0].BorderLine.Z * 0.5f;
3505 if (agent.startpos.Z > 720)
3506 agent.startpos.Z = 720;
3507 }
3508 if (agent.startpos.Y > NorthBorders[0].BorderLine.Z)
3509 {
3510 m_log.Warn("FIX Agent POSITION");
3511 agent.startpos.Y = NorthBorders[0].BorderLine.Z * 0.5f;
3512 if (agent.startpos.Z > 720)
3513 agent.startpos.Z = 720;
3514 }
3515 }
3473 // Honor parcel landing type and position. 3516 // Honor parcel landing type and position.
3474 ILandObject land = LandChannel.GetLandObject(agent.startpos.X, agent.startpos.Y); 3517 ILandObject land = LandChannel.GetLandObject(agent.startpos.X, agent.startpos.Y);
3475 if (land != null) 3518 if (land != null)
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index 10b7d94..cdec135 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -2430,7 +2430,7 @@ namespace OpenSim.Region.Framework.Scenes
2430 m_updateFlag = 0; //Same here 2430 m_updateFlag = 0; //Same here
2431 } 2431 }
2432 } 2432 }
2433 ClearUpdateSchedule(); 2433 m_updateFlag = 0;
2434 } 2434 }
2435 2435
2436 /// <summary> 2436 /// <summary>
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 0437a6d..ce6110a 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -151,6 +151,8 @@ namespace OpenSim.Region.Framework.Scenes
151 151
152 private Quaternion m_bodyRot= Quaternion.Identity; 152 private Quaternion m_bodyRot= Quaternion.Identity;
153 153
154 private const int LAND_VELOCITYMAG_MAX = 12;
155
154 public bool IsRestrictedToRegion; 156 public bool IsRestrictedToRegion;
155 157
156 public string JID = String.Empty; 158 public string JID = String.Empty;
@@ -247,7 +249,7 @@ namespace OpenSim.Region.Framework.Scenes
247 /// <value> 249 /// <value>
248 /// Script engines present in the scene 250 /// Script engines present in the scene
249 /// </value> 251 /// </value>
250 private IScriptModule[] m_scriptEngines; 252 private IScriptModule[] m_scriptEngines;
251 253
252 #region Properties 254 #region Properties
253 255
@@ -674,7 +676,7 @@ namespace OpenSim.Region.Framework.Scenes
674 AvatarWearable[] wearables) 676 AvatarWearable[] wearables)
675 : this(client, world, reginfo) 677 : this(client, world, reginfo)
676 { 678 {
677 m_appearance = new AvatarAppearance(m_uuid, wearables, visualParams); 679 m_appearance = new AvatarAppearance(m_uuid, wearables, visualParams);
678 } 680 }
679 681
680 public ScenePresence(IClientAPI client, Scene world, RegionInfo reginfo, AvatarAppearance appearance) 682 public ScenePresence(IClientAPI client, Scene world, RegionInfo reginfo, AvatarAppearance appearance)
@@ -1000,8 +1002,8 @@ namespace OpenSim.Region.Framework.Scenes
1000 public void StopFlying() 1002 public void StopFlying()
1001 { 1003 {
1002 // It turns out to get the agent to stop flying, you have to feed it stop flying velocities 1004 // It turns out to get the agent to stop flying, you have to feed it stop flying velocities
1003 // and send a full object update. 1005 // There's no explicit message to send the client to tell it to stop flying.. it relies on the
1004 // There's no message to send the client to tell it to stop flying 1006 // velocity, collision plane and avatar height
1005 1007
1006 // Add 1/6 the avatar's height to it's position so it doesn't shoot into the air 1008 // Add 1/6 the avatar's height to it's position so it doesn't shoot into the air
1007 // when the avatar stands up 1009 // when the avatar stands up
@@ -1015,8 +1017,6 @@ namespace OpenSim.Region.Framework.Scenes
1015 AbsolutePosition = AbsolutePosition + new Vector3(0f, 0f, (1.56f / 6f)); 1017 AbsolutePosition = AbsolutePosition + new Vector3(0f, 0f, (1.56f / 6f));
1016 } 1018 }
1017 1019
1018 Animator.TrySetMovementAnimation("LAND");
1019 //SendFullUpdateToAllClients();
1020 ControllingClient.SendAvatarTerseUpdate(new SendAvatarTerseData(m_rootRegionHandle, (ushort)(m_scene.TimeDilation * ushort.MaxValue), LocalId, 1020 ControllingClient.SendAvatarTerseUpdate(new SendAvatarTerseData(m_rootRegionHandle, (ushort)(m_scene.TimeDilation * ushort.MaxValue), LocalId,
1021 AbsolutePosition, Velocity, Vector3.Zero, m_bodyRot, new Vector4(0,0,1,AbsolutePosition.Z - 0.5f), m_uuid, null, GetUpdatePriority(ControllingClient))); 1021 AbsolutePosition, Velocity, Vector3.Zero, m_bodyRot, new Vector4(0,0,1,AbsolutePosition.Z - 0.5f), m_uuid, null, GetUpdatePriority(ControllingClient)));
1022 } 1022 }
@@ -1468,6 +1468,8 @@ namespace OpenSim.Region.Framework.Scenes
1468 // Only do this if we're flying 1468 // Only do this if we're flying
1469 if (m_physicsActor != null && m_physicsActor.Flying && !m_forceFly) 1469 if (m_physicsActor != null && m_physicsActor.Flying && !m_forceFly)
1470 { 1470 {
1471 // Landing detection code
1472
1471 // Are the landing controls requirements filled? 1473 // Are the landing controls requirements filled?
1472 bool controlland = (((flags & AgentManager.ControlFlags.AGENT_CONTROL_UP_NEG) != 0) || 1474 bool controlland = (((flags & AgentManager.ControlFlags.AGENT_CONTROL_UP_NEG) != 0) ||
1473 ((flags & AgentManager.ControlFlags.AGENT_CONTROL_NUDGE_UP_NEG) != 0)); 1475 ((flags & AgentManager.ControlFlags.AGENT_CONTROL_NUDGE_UP_NEG) != 0));
@@ -1477,7 +1479,10 @@ namespace OpenSim.Region.Framework.Scenes
1477 1479
1478 if (m_physicsActor.Flying && colliding && controlland) 1480 if (m_physicsActor.Flying && colliding && controlland)
1479 { 1481 {
1480 StopFlying(); 1482 // nesting this check because LengthSquared() is expensive and we don't
1483 // want to do it every step when flying.
1484 if ((Velocity.LengthSquared() <= LAND_VELOCITYMAG_MAX))
1485 StopFlying();
1481 } 1486 }
1482 } 1487 }
1483 1488
@@ -3097,7 +3102,7 @@ namespace OpenSim.Region.Framework.Scenes
3097 3102
3098 public ScenePresence() 3103 public ScenePresence()
3099 { 3104 {
3100 m_sendCourseLocationsMethod = SendCoarseLocationsDefault; 3105 m_sendCourseLocationsMethod = SendCoarseLocationsDefault;
3101 CreateSceneViewer(); 3106 CreateSceneViewer();
3102 m_animator = new ScenePresenceAnimator(this); 3107 m_animator = new ScenePresenceAnimator(this);
3103 } 3108 }
@@ -3185,8 +3190,8 @@ namespace OpenSim.Region.Framework.Scenes
3185 } 3190 }
3186 } 3191 }
3187 } 3192 }
3188 } 3193 }
3189 } 3194 }
3190 3195
3191 public bool CrossAttachmentsIntoNewRegion(ulong regionHandle, bool silent) 3196 public bool CrossAttachmentsIntoNewRegion(ulong regionHandle, bool silent)
3192 { 3197 {
diff --git a/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs b/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs
index b68a044..a36c4db 100644
--- a/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs
+++ b/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs
@@ -65,7 +65,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
65 m_uuidGatherer.GatherAssetUuids(corruptAssetUuid, AssetType.Object, foundAssetUuids); 65 m_uuidGatherer.GatherAssetUuids(corruptAssetUuid, AssetType.Object, foundAssetUuids);
66 66
67 // We count the uuid as gathered even if the asset itself is corrupt. 67 // We count the uuid as gathered even if the asset itself is corrupt.
68 Assert.That(foundAssetUuids.Count, Is.EqualTo(1)); 68 Assert.That(foundAssetUuids.Count, Is.EqualTo(1));
69 } 69 }
70 70
71 /// <summary> 71 /// <summary>
@@ -76,7 +76,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
76 { 76 {
77 TestHelper.InMethod(); 77 TestHelper.InMethod();
78 78
79 UUID missingAssetUuid = UUID.Parse("00000000-0000-0000-0000-000000000666"); 79 UUID missingAssetUuid = UUID.Parse("00000000-0000-0000-0000-000000000666");
80 IDictionary<UUID, int> foundAssetUuids = new Dictionary<UUID, int>(); 80 IDictionary<UUID, int> foundAssetUuids = new Dictionary<UUID, int>();
81 81
82 m_uuidGatherer.GatherAssetUuids(missingAssetUuid, AssetType.Object, foundAssetUuids); 82 m_uuidGatherer.GatherAssetUuids(missingAssetUuid, AssetType.Object, foundAssetUuids);
diff --git a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
index c7e0848..b0e9a91 100644
--- a/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
+++ b/OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
@@ -2185,9 +2185,30 @@ Console.WriteLine(" JointCreateFixed");
2185 if (IsPhysical) 2185 if (IsPhysical)
2186 { 2186 {
2187 Vector3 iforce = Vector3.Zero; 2187 Vector3 iforce = Vector3.Zero;
2188 for (int i = 0; i < m_forcelist.Count; i++) 2188 int i = 0;
2189 try
2190 {
2191 for (i = 0; i < m_forcelist.Count; i++)
2192 {
2193
2194 iforce = iforce + (m_forcelist[i] * 100);
2195 }
2196 }
2197 catch (IndexOutOfRangeException)
2198 {
2199 m_forcelist = new List<Vector3>();
2200 m_collisionscore = 0;
2201 m_interpenetrationcount = 0;
2202 m_taintforce = false;
2203 return;
2204 }
2205 catch (ArgumentOutOfRangeException)
2189 { 2206 {
2190 iforce = iforce + (m_forcelist[i] * 100); 2207 m_forcelist = new List<Vector3>();
2208 m_collisionscore = 0;
2209 m_interpenetrationcount = 0;
2210 m_taintforce = false;
2211 return;
2191 } 2212 }
2192 d.BodyEnable(Body); 2213 d.BodyEnable(Body);
2193 d.BodyAddForce(Body, iforce.X, iforce.Y, iforce.Z); 2214 d.BodyAddForce(Body, iforce.X, iforce.Y, iforce.Z);
@@ -2521,7 +2542,9 @@ Console.WriteLine(" JointCreateFixed");
2521 { 2542 {
2522 if (force.IsFinite()) 2543 if (force.IsFinite())
2523 { 2544 {
2524 m_forcelist.Add(force); 2545 lock (m_forcelist)
2546 m_forcelist.Add(force);
2547
2525 m_taintforce = true; 2548 m_taintforce = true;
2526 } 2549 }
2527 else 2550 else
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index 981cf43..e6b31ca 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -835,7 +835,18 @@ namespace OpenSim.Region.Physics.OdePlugin
835 // allows us to have different settings 835 // allows us to have different settings
836 836
837 // We only need to test p2 for 'jump crouch purposes' 837 // We only need to test p2 for 'jump crouch purposes'
838 p2.IsColliding = true; 838 if (p2 is OdeCharacter)
839 {
840 // Testing if the collision is at the feet of the avatar
841
842 //m_log.DebugFormat("[PHYSICS]: {0} - {1} - {2} - {3}", curContact.pos.Z, p2.Position.Z, (p2.Position.Z - curContact.pos.Z), (p2.Size.Z * 0.6f));
843 if ((p2.Position.Z - curContact.pos.Z) > (p2.Size.Z * 0.6f))
844 p2.IsColliding = true;
845 }
846 else
847 {
848 p2.IsColliding = true;
849 }
839 850
840 //if ((framecount % m_returncollisions) == 0) 851 //if ((framecount % m_returncollisions) == 0)
841 852
diff --git a/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs b/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
index 7ec1d4b..92f060b 100644
--- a/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
+++ b/OpenSim/Region/RegionCombinerModule/RegionCombinerModule.cs
@@ -325,7 +325,7 @@ namespace OpenSim.Region.RegionCombinerModule
325 >= (regionConnections.Y * (int)Constants.RegionSize))) 325 >= (regionConnections.Y * (int)Constants.RegionSize)))
326 { 326 {
327 connectedYN = DoWorkForOneRegionOverXPlusY(conn, regionConnections, scene); 327 connectedYN = DoWorkForOneRegionOverXPlusY(conn, regionConnections, scene);
328 break; 328 break;
329 } 329 }
330 330
331 // If we're one region over +x +y 331 // If we're one region over +x +y
@@ -338,7 +338,7 @@ namespace OpenSim.Region.RegionCombinerModule
338 >= (regionConnections.Y * (int)Constants.RegionSize))) 338 >= (regionConnections.Y * (int)Constants.RegionSize)))
339 { 339 {
340 connectedYN = DoWorkForOneRegionOverPlusXPlusY(conn, regionConnections, scene); 340 connectedYN = DoWorkForOneRegionOverPlusXPlusY(conn, regionConnections, scene);
341 break; 341 break;
342 342
343 } 343 }
344 } 344 }
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 5fb2775..50b2fb5 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -1271,11 +1271,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1271 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted) 1271 if (part == null || part.ParentGroup == null || part.ParentGroup.IsDeleted)
1272 return; 1272 return;
1273 if (scale.x < 0.01) 1273 if (scale.x < 0.01)
1274 scale.x = 0.01; 1274 scale.x = 0.01;
1275 if (scale.y < 0.01) 1275 if (scale.y < 0.01)
1276 scale.y = 0.01; 1276 scale.y = 0.01;
1277 if (scale.z < 0.01) 1277 if (scale.z < 0.01)
1278 scale.z = 0.01; 1278 scale.z = 0.01;
1279 1279
1280 if (part.ParentGroup.RootPart.PhysActor != null && part.ParentGroup.RootPart.PhysActor.IsPhysical) 1280 if (part.ParentGroup.RootPart.PhysActor != null && part.ParentGroup.RootPart.PhysActor.IsPhysical)
1281 { 1281 {
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
index 549c038..41b5d49 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
@@ -252,18 +252,18 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
252 { 252 {
253 m_Apis[api] = am.CreateApi(api); 253 m_Apis[api] = am.CreateApi(api);
254 m_Apis[api].Initialize(engine, part, m_LocalID, itemID); 254 m_Apis[api].Initialize(engine, part, m_LocalID, itemID);
255 } 255 }
256 256
257 try 257 try
258 { 258 {
259 if (dom != System.AppDomain.CurrentDomain) 259 if (dom != System.AppDomain.CurrentDomain)
260 m_Script = (IScript)dom.CreateInstanceAndUnwrap( 260 m_Script = (IScript)dom.CreateInstanceAndUnwrap(
261 Path.GetFileNameWithoutExtension(assembly), 261 Path.GetFileNameWithoutExtension(assembly),
262 "SecondLife.Script"); 262 "SecondLife.Script");
263 else 263 else
264 m_Script = (IScript)Assembly.Load( 264 m_Script = (IScript)Assembly.Load(
265 Path.GetFileNameWithoutExtension(assembly)).CreateInstance( 265 Path.GetFileNameWithoutExtension(assembly)).CreateInstance(
266 "SecondLife.Script"); 266 "SecondLife.Script");
267 267
268 268
269 //ILease lease = (ILease)RemotingServices.GetLifetimeService(m_Script as ScriptBaseClass); 269 //ILease lease = (ILease)RemotingServices.GetLifetimeService(m_Script as ScriptBaseClass);
@@ -903,7 +903,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
903 // If the state is different, update the disk file. 903 // If the state is different, update the disk file.
904 UUID hash = UUID.Parse(Utils.MD5String(xml)); 904 UUID hash = UUID.Parse(Utils.MD5String(xml));
905 905
906 if(hash != m_CurrentStateHash) 906 if (hash != m_CurrentStateHash)
907 { 907 {
908 try 908 try
909 { 909 {