aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorJohn Hurliman2010-09-12 14:21:51 -0700
committerJohn Hurliman2010-09-12 14:21:51 -0700
commitc03b24cbfdc449cf326cf0f560395753339169dc (patch)
treed62a666839d3c638b5c9799c70be971a2d6d6c18 /OpenSim/Region
parent* Added ISimulationDataService and IEstateDataService (diff)
parentFormatting cleanup. (diff)
downloadopensim-SC_OLD-c03b24cbfdc449cf326cf0f560395753339169dc.zip
opensim-SC_OLD-c03b24cbfdc449cf326cf0f560395753339169dc.tar.gz
opensim-SC_OLD-c03b24cbfdc449cf326cf0f560395753339169dc.tar.bz2
opensim-SC_OLD-c03b24cbfdc449cf326cf0f560395753339169dc.tar.xz
Merged
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Application/Application.cs2
-rw-r--r--OpenSim/Region/Application/OpenSim.cs16
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs261
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs24
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Combat/CombatModule.cs4
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs6
-rw-r--r--OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs18
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs10
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverException.cs2
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs28
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs54
-rw-r--r--OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueGetModule.cs4
-rw-r--r--OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueHelper.cs18
-rw-r--r--OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/Framework/Statistics/Logging/BinaryLoggingModule.cs12
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs2
-rw-r--r--OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs2
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiveHelpers.cs8
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs115
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandObject.cs14
-rw-r--r--OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs98
-rw-r--r--OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs14
-rw-r--r--OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs22
-rw-r--r--OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/World/Wind/WindModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/World/WorldMap/MapImageModule.cs2
-rw-r--r--OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs2
-rw-r--r--OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs2
-rw-r--r--OpenSim/Region/Framework/Interfaces/IGroupsModule.cs6
-rw-r--r--OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs16
-rw-r--r--OpenSim/Region/Framework/Interfaces/IMoapModule.cs2
-rw-r--r--OpenSim/Region/Framework/Interfaces/IWorldMapModule.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/EventManager.cs12
-rw-r--r--OpenSim/Region/Framework/Scenes/Prioritizer.cs37
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs12
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Permissions.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs14
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneBase.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneGraph.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs18
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs22
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneViewer.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/Tests/SceneGraphTests.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs18
-rw-r--r--OpenSim/Region/Framework/Scenes/Tests/TaskInventoryTests.cs14
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs2
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs39
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs4
-rw-r--r--OpenSim/Region/OptionalModules/ContentManagementSystem/MetaEntity.cs2
-rw-r--r--OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs4
-rw-r--r--OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs2
-rw-r--r--OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs4
-rw-r--r--OpenSim/Region/RegionCombinerModule/RegionCombinerLargeLandChannel.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs8
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs4
-rw-r--r--OpenSim/Region/ScriptEngine/XEngine/XEngine.cs2
62 files changed, 523 insertions, 507 deletions
diff --git a/OpenSim/Region/Application/Application.cs b/OpenSim/Region/Application/Application.cs
index b860cf6..d120f03 100644
--- a/OpenSim/Region/Application/Application.cs
+++ b/OpenSim/Region/Application/Application.cs
@@ -225,7 +225,7 @@ namespace OpenSim
225 } 225 }
226 } 226 }
227 MainConsole.Instance = null; 227 MainConsole.Instance = null;
228 } 228 }
229 */ 229 */
230 configSource.Alias.AddAlias("On", true); 230 configSource.Alias.AddAlias("On", true);
231 configSource.Alias.AddAlias("Off", false); 231 configSource.Alias.AddAlias("Off", false);
diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs
index 4f2d223..c85ff82 100644
--- a/OpenSim/Region/Application/OpenSim.cs
+++ b/OpenSim/Region/Application/OpenSim.cs
@@ -152,7 +152,7 @@ namespace OpenSim
152 RegisterConsoleCommands(); 152 RegisterConsoleCommands();
153 153
154 base.StartupSpecific(); 154 base.StartupSpecific();
155 155
156 MainServer.Instance.AddStreamHandler(new OpenSim.SimStatusHandler()); 156 MainServer.Instance.AddStreamHandler(new OpenSim.SimStatusHandler());
157 MainServer.Instance.AddStreamHandler(new OpenSim.XSimStatusHandler(this)); 157 MainServer.Instance.AddStreamHandler(new OpenSim.XSimStatusHandler(this));
158 if (userStatsURI != String.Empty) 158 if (userStatsURI != String.Empty)
@@ -192,7 +192,7 @@ namespace OpenSim
192 // Hook up to the watchdog timer 192 // Hook up to the watchdog timer
193 Watchdog.OnWatchdogTimeout += WatchdogTimeoutHandler; 193 Watchdog.OnWatchdogTimeout += WatchdogTimeoutHandler;
194 194
195 PrintFileToConsole("startuplogo.txt"); 195 PrintFileToConsole("startuplogo.txt");
196 196
197 // For now, start at the 'root' level by default 197 // For now, start at the 'root' level by default
198 if (m_sceneManager.Scenes.Count == 1) // If there is only one region, select it 198 if (m_sceneManager.Scenes.Count == 1) // If there is only one region, select it
@@ -218,8 +218,8 @@ namespace OpenSim
218 218
219 m_console.Commands.AddCommand("region", false, "debug packet", 219 m_console.Commands.AddCommand("region", false, "debug packet",
220 "debug packet <level>", 220 "debug packet <level>",
221 "Turn on packet debugging", 221 "Turn on packet debugging",
222 "If level > 255 then all incoming and outgoing packets are logged.\n" 222 "If level > 255 then all incoming and outgoing packets are logged.\n"
223 + "If level <= 255 then incoming AgentUpdate and outgoing SimStats and SimulatorViewerTimeMessage packets are not logged.\n" 223 + "If level <= 255 then incoming AgentUpdate and outgoing SimStats and SimulatorViewerTimeMessage packets are not logged.\n"
224 + "If level <= 200 then incoming RequestImage and outgoing ImagePacket, ImageData, LayerData and CoarseLocationUpdate packets are not logged.\n" 224 + "If level <= 200 then incoming RequestImage and outgoing ImagePacket, ImageData, LayerData and CoarseLocationUpdate packets are not logged.\n"
225 + "If level <= 100 then incoming ViewerEffect and AgentAnimation and outgoing ViewerEffect and AvatarAnimation packets are not logged.\n" 225 + "If level <= 100 then incoming ViewerEffect and AgentAnimation and outgoing ViewerEffect and AvatarAnimation packets are not logged.\n"
@@ -561,11 +561,11 @@ namespace OpenSim
561 { 561 {
562 regInfo = new RegionInfo(regionName, regionFile, false, ConfigSource.Source, regionName); 562 regInfo = new RegionInfo(regionName, regionFile, false, ConfigSource.Source, regionName);
563 } 563 }
564 564
565 IScene scene; 565 IScene scene;
566 PopulateRegionEstateInfo(regInfo); 566 PopulateRegionEstateInfo(regInfo);
567 CreateRegion(regInfo, true, out scene); 567 CreateRegion(regInfo, true, out scene);
568 regInfo.EstateSettings.Save(); 568 regInfo.EstateSettings.Save();
569 } 569 }
570 570
571 /// <summary> 571 /// <summary>
@@ -943,7 +943,7 @@ namespace OpenSim
943 delegate(Scene scene) 943 delegate(Scene scene)
944 { 944 {
945 MainConsole.Instance.Output(String.Format( 945 MainConsole.Instance.Output(String.Format(
946 "Region Name: {0}, Region XLoc: {1}, Region YLoc: {2}, Region Port: {3}", 946 "Region Name: {0}, Region XLoc: {1}, Region YLoc: {2}, Region Port: {3}",
947 scene.RegionInfo.RegionName, 947 scene.RegionInfo.RegionName,
948 scene.RegionInfo.RegionLocX, 948 scene.RegionInfo.RegionLocX,
949 scene.RegionInfo.RegionLocY, 949 scene.RegionInfo.RegionLocY,
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index a6315a9..f35691a 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -63,7 +63,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
63 /// Debug packet level. See OpenSim.RegisterConsoleCommands() for more details. 63 /// Debug packet level. See OpenSim.RegisterConsoleCommands() for more details.
64 /// </value> 64 /// </value>
65 protected int m_debugPacketLevel = 0; 65 protected int m_debugPacketLevel = 0;
66 66
67 #region Events 67 #region Events
68 68
69 public event GenericMessage OnGenericMessage; 69 public event GenericMessage OnGenericMessage;
@@ -287,7 +287,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
287 public event MuteListEntryRemove OnRemoveMuteListEntry; 287 public event MuteListEntryRemove OnRemoveMuteListEntry;
288 public event GodlikeMessage onGodlikeMessage; 288 public event GodlikeMessage onGodlikeMessage;
289 public event GodUpdateRegionInfoUpdate OnGodUpdateRegionInfoUpdate; 289 public event GodUpdateRegionInfoUpdate OnGodUpdateRegionInfoUpdate;
290
291 290
292 #endregion Events 291 #endregion Events
293 292
@@ -329,12 +328,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
329 /// ownerless phantom. 328 /// ownerless phantom.
330 /// 329 ///
331 /// All manipulation of this set has to occur under an m_entityUpdates.SyncRoot lock 330 /// All manipulation of this set has to occur under an m_entityUpdates.SyncRoot lock
332 /// 331 ///
333 /// </value> 332 /// </value>
334 protected HashSet<uint> m_killRecord; 333 protected HashSet<uint> m_killRecord;
335 334
336// protected HashSet<uint> m_attachmentsSent; 335// protected HashSet<uint> m_attachmentsSent;
337 336
338 private int m_moneyBalance; 337 private int m_moneyBalance;
339 private int m_animationSequenceNumber = 1; 338 private int m_animationSequenceNumber = 1;
340 private bool m_SendLogoutPacketWhenClosing = true; 339 private bool m_SendLogoutPacketWhenClosing = true;
@@ -383,22 +382,22 @@ namespace OpenSim.Region.ClientStack.LindenUDP
383 public string ActiveGroupName { get { return m_activeGroupName; } } 382 public string ActiveGroupName { get { return m_activeGroupName; } }
384 public ulong ActiveGroupPowers { get { return m_activeGroupPowers; } } 383 public ulong ActiveGroupPowers { get { return m_activeGroupPowers; } }
385 public bool IsGroupMember(UUID groupID) { return m_groupPowers.ContainsKey(groupID); } 384 public bool IsGroupMember(UUID groupID) { return m_groupPowers.ContainsKey(groupID); }
386 385
387 /// <summary> 386 /// <summary>
388 /// First name of the agent/avatar represented by the client 387 /// First name of the agent/avatar represented by the client
389 /// </summary> 388 /// </summary>
390 public string FirstName { get { return m_firstName; } } 389 public string FirstName { get { return m_firstName; } }
391 390
392 /// <summary> 391 /// <summary>
393 /// Last name of the agent/avatar represented by the client 392 /// Last name of the agent/avatar represented by the client
394 /// </summary> 393 /// </summary>
395 public string LastName { get { return m_lastName; } } 394 public string LastName { get { return m_lastName; } }
396 395
397 /// <summary> 396 /// <summary>
398 /// Full name of the client (first name and last name) 397 /// Full name of the client (first name and last name)
399 /// </summary> 398 /// </summary>
400 public string Name { get { return FirstName + " " + LastName; } } 399 public string Name { get { return FirstName + " " + LastName; } }
401 400
402 public uint CircuitCode { get { return m_circuitCode; } } 401 public uint CircuitCode { get { return m_circuitCode; } }
403 public int MoneyBalance { get { return m_moneyBalance; } } 402 public int MoneyBalance { get { return m_moneyBalance; } }
404 public int NextAnimationSequenceNumber { get { return m_animationSequenceNumber++; } } 403 public int NextAnimationSequenceNumber { get { return m_animationSequenceNumber++; } }
@@ -440,7 +439,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
440 m_entityUpdates = new PriorityQueue(m_scene.Entities.Count); 439 m_entityUpdates = new PriorityQueue(m_scene.Entities.Count);
441 m_fullUpdateDataBlocksBuilder = new List<ObjectUpdatePacket.ObjectDataBlock>(); 440 m_fullUpdateDataBlocksBuilder = new List<ObjectUpdatePacket.ObjectDataBlock>();
442 m_killRecord = new HashSet<uint>(); 441 m_killRecord = new HashSet<uint>();
443// m_attachmentsSent = new HashSet<uint>(); 442// m_attachmentsSent = new HashSet<uint>();
444 443
445 m_assetService = m_scene.RequestModuleInterface<IAssetService>(); 444 m_assetService = m_scene.RequestModuleInterface<IAssetService>();
446 m_GroupsModule = scene.RequestModuleInterface<IGroupsModule>(); 445 m_GroupsModule = scene.RequestModuleInterface<IGroupsModule>();
@@ -654,7 +653,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
654 // Make sure that we see any exception caused by the asynchronous operation. 653 // Make sure that we see any exception caused by the asynchronous operation.
655 m_log.Error( 654 m_log.Error(
656 string.Format("[LLCLIENTVIEW]: Caught exception while processing {0}", packetObject.Pack), e); 655 string.Format("[LLCLIENTVIEW]: Caught exception while processing {0}", packetObject.Pack), e);
657 } 656 }
658 } 657 }
659 658
660 #endregion Packet Handling 659 #endregion Packet Handling
@@ -865,7 +864,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
865 foreach (GroupActiveProposals Proposal in Proposals) 864 foreach (GroupActiveProposals Proposal in Proposals)
866 { 865 {
867 GroupActiveProposalItemReplyPacket GAPIRP = new GroupActiveProposalItemReplyPacket(); 866 GroupActiveProposalItemReplyPacket GAPIRP = new GroupActiveProposalItemReplyPacket();
868 867
869 GAPIRP.AgentData.AgentID = AgentId; 868 GAPIRP.AgentData.AgentID = AgentId;
870 GAPIRP.AgentData.GroupID = groupID; 869 GAPIRP.AgentData.GroupID = groupID;
871 GAPIRP.TransactionData.TransactionID = transactionID; 870 GAPIRP.TransactionData.TransactionID = transactionID;
@@ -889,7 +888,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
889 if (Proposals.Length == 0) 888 if (Proposals.Length == 0)
890 { 889 {
891 GroupActiveProposalItemReplyPacket GAPIRP = new GroupActiveProposalItemReplyPacket(); 890 GroupActiveProposalItemReplyPacket GAPIRP = new GroupActiveProposalItemReplyPacket();
892 891
893 GAPIRP.AgentData.AgentID = AgentId; 892 GAPIRP.AgentData.AgentID = AgentId;
894 GAPIRP.AgentData.GroupID = groupID; 893 GAPIRP.AgentData.GroupID = groupID;
895 GAPIRP.TransactionData.TransactionID = transactionID; 894 GAPIRP.TransactionData.TransactionID = transactionID;
@@ -944,7 +943,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
944 if (Votes.Length == 0) 943 if (Votes.Length == 0)
945 { 944 {
946 GroupVoteHistoryItemReplyPacket GVHIRP = new GroupVoteHistoryItemReplyPacket(); 945 GroupVoteHistoryItemReplyPacket GVHIRP = new GroupVoteHistoryItemReplyPacket();
947 946
948 GVHIRP.AgentData.AgentID = AgentId; 947 GVHIRP.AgentData.AgentID = AgentId;
949 GVHIRP.AgentData.GroupID = groupID; 948 GVHIRP.AgentData.GroupID = groupID;
950 GVHIRP.TransactionData.TransactionID = transactionID; 949 GVHIRP.TransactionData.TransactionID = transactionID;
@@ -968,7 +967,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
968 OutPacket(GVHIRP, ThrottleOutPacketType.Task); 967 OutPacket(GVHIRP, ThrottleOutPacketType.Task);
969 } 968 }
970 } 969 }
971 970
972 public void SendGroupAccountingDetails(IClientAPI sender,UUID groupID, UUID transactionID, UUID sessionID, int amt) 971 public void SendGroupAccountingDetails(IClientAPI sender,UUID groupID, UUID transactionID, UUID sessionID, int amt)
973 { 972 {
974 GroupAccountDetailsReplyPacket GADRP = new GroupAccountDetailsReplyPacket(); 973 GroupAccountDetailsReplyPacket GADRP = new GroupAccountDetailsReplyPacket();
@@ -987,13 +986,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
987 GADRP.HistoryData[0] = History; 986 GADRP.HistoryData[0] = History;
988 OutPacket(GADRP, ThrottleOutPacketType.Task); 987 OutPacket(GADRP, ThrottleOutPacketType.Task);
989 } 988 }
990 989
991 public void SendGroupAccountingSummary(IClientAPI sender,UUID groupID, uint moneyAmt, int totalTier, int usedTier) 990 public void SendGroupAccountingSummary(IClientAPI sender,UUID groupID, uint moneyAmt, int totalTier, int usedTier)
992 { 991 {
993 GroupAccountSummaryReplyPacket GASRP = 992 GroupAccountSummaryReplyPacket GASRP =
994 (GroupAccountSummaryReplyPacket)PacketPool.Instance.GetPacket( 993 (GroupAccountSummaryReplyPacket)PacketPool.Instance.GetPacket(
995 PacketType.GroupAccountSummaryReply); 994 PacketType.GroupAccountSummaryReply);
996 995
997 GASRP.AgentData = new GroupAccountSummaryReplyPacket.AgentDataBlock(); 996 GASRP.AgentData = new GroupAccountSummaryReplyPacket.AgentDataBlock();
998 GASRP.AgentData.AgentID = sender.AgentId; 997 GASRP.AgentData.AgentID = sender.AgentId;
999 GASRP.AgentData.GroupID = groupID; 998 GASRP.AgentData.GroupID = groupID;
@@ -1020,13 +1019,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1020 GASRP.MoneyData.LightTaxEstimate = 0; 1019 GASRP.MoneyData.LightTaxEstimate = 0;
1021 OutPacket(GASRP, ThrottleOutPacketType.Task); 1020 OutPacket(GASRP, ThrottleOutPacketType.Task);
1022 } 1021 }
1023 1022
1024 public void SendGroupTransactionsSummaryDetails(IClientAPI sender,UUID groupID, UUID transactionID, UUID sessionID, int amt) 1023 public void SendGroupTransactionsSummaryDetails(IClientAPI sender,UUID groupID, UUID transactionID, UUID sessionID, int amt)
1025 { 1024 {
1026 GroupAccountTransactionsReplyPacket GATRP = 1025 GroupAccountTransactionsReplyPacket GATRP =
1027 (GroupAccountTransactionsReplyPacket)PacketPool.Instance.GetPacket( 1026 (GroupAccountTransactionsReplyPacket)PacketPool.Instance.GetPacket(
1028 PacketType.GroupAccountTransactionsReply); 1027 PacketType.GroupAccountTransactionsReply);
1029 1028
1030 GATRP.AgentData = new GroupAccountTransactionsReplyPacket.AgentDataBlock(); 1029 GATRP.AgentData = new GroupAccountTransactionsReplyPacket.AgentDataBlock();
1031 GATRP.AgentData.AgentID = sender.AgentId; 1030 GATRP.AgentData.AgentID = sender.AgentId;
1032 GATRP.AgentData.GroupID = groupID; 1031 GATRP.AgentData.GroupID = groupID;
@@ -1510,7 +1509,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
1510 public void SendKillObject(ulong regionHandle, uint localID) 1509 public void SendKillObject(ulong regionHandle, uint localID)
1511 { 1510 {
1512// m_log.DebugFormat("[CLIENT]: Sending KillObjectPacket to {0} for {1} in {2}", Name, localID, regionHandle); 1511// m_log.DebugFormat("[CLIENT]: Sending KillObjectPacket to {0} for {1} in {2}", Name, localID, regionHandle);
1513 1512
1514 KillObjectPacket kill = (KillObjectPacket)PacketPool.Instance.GetPacket(PacketType.KillObject); 1513 KillObjectPacket kill = (KillObjectPacket)PacketPool.Instance.GetPacket(PacketType.KillObject);
1515 // TODO: don't create new blocks if recycling an old packet 1514 // TODO: don't create new blocks if recycling an old packet
1516 kill.ObjectData = new KillObjectPacket.ObjectDataBlock[1]; 1515 kill.ObjectData = new KillObjectPacket.ObjectDataBlock[1];
@@ -3469,9 +3468,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3469 objupdate.ObjectData[0] = CreateAvatarUpdateBlock(presence); 3468 objupdate.ObjectData[0] = CreateAvatarUpdateBlock(presence);
3470 3469
3471 OutPacket(objupdate, ThrottleOutPacketType.Task); 3470 OutPacket(objupdate, ThrottleOutPacketType.Task);
3472 3471
3473 // We need to record the avatar local id since the root prim of an attachment points to this. 3472 // We need to record the avatar local id since the root prim of an attachment points to this.
3474// m_attachmentsSent.Add(avatar.LocalId); 3473// m_attachmentsSent.Add(avatar.LocalId);
3475 } 3474 }
3476 3475
3477 public void SendCoarseLocationUpdate(List<UUID> users, List<Vector3> CoarseLocations) 3476 public void SendCoarseLocationUpdate(List<UUID> users, List<Vector3> CoarseLocations)
@@ -3519,7 +3518,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3519 #region Primitive Packet/Data Sending Methods 3518 #region Primitive Packet/Data Sending Methods
3520 3519
3521 /// <summary> 3520 /// <summary>
3522 /// Generate one of the object update packets based on PrimUpdateFlags 3521 /// Generate one of the object update packets based on PrimUpdateFlags
3523 /// and broadcast the packet to clients 3522 /// and broadcast the packet to clients
3524 /// </summary> 3523 /// </summary>
3525 public void SendPrimUpdate(ISceneEntity entity, PrimUpdateFlags updateFlags) 3524 public void SendPrimUpdate(ISceneEntity entity, PrimUpdateFlags updateFlags)
@@ -3527,7 +3526,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3527 double priority = m_prioritizer.GetUpdatePriority(this, entity); 3526 double priority = m_prioritizer.GetUpdatePriority(this, entity);
3528 3527
3529 lock (m_entityUpdates.SyncRoot) 3528 lock (m_entityUpdates.SyncRoot)
3530 m_entityUpdates.Enqueue(priority, new EntityUpdate(entity, updateFlags), entity.LocalId); 3529 m_entityUpdates.Enqueue(priority, new EntityUpdate(entity, updateFlags), entity.LocalId);
3531 } 3530 }
3532 3531
3533 private void ProcessEntityUpdates(int maxUpdates) 3532 private void ProcessEntityUpdates(int maxUpdates)
@@ -3544,20 +3543,20 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3544 EntityUpdate update; 3543 EntityUpdate update;
3545 while (updatesThisCall < maxUpdates && m_entityUpdates.TryDequeue(out update)) 3544 while (updatesThisCall < maxUpdates && m_entityUpdates.TryDequeue(out update))
3546 { 3545 {
3547 // Please do not remove this unless you can demonstrate on the OpenSim mailing list that a client 3546 // Please do not remove this unless you can demonstrate on the OpenSim mailing list that a client
3548 // will never receive an update after a prim kill. Even then, keeping the kill record may be a good 3547 // will never receive an update after a prim kill. Even then, keeping the kill record may be a good
3549 // safety measure. 3548 // safety measure.
3550 // 3549 //
3551 // Receiving updates after kills results in undeleteable prims that persist until relog and 3550 // Receiving updates after kills results in undeleteable prims that persist until relog and
3552 // currently occurs because prims can be deleted before all queued updates are sent. 3551 // currently occurs because prims can be deleted before all queued updates are sent.
3553 if (m_killRecord.Contains(update.Entity.LocalId)) 3552 if (m_killRecord.Contains(update.Entity.LocalId))
3554 { 3553 {
3555// m_log.WarnFormat( 3554// m_log.WarnFormat(
3556// "[CLIENT]: Preventing full update for prim with local id {0} after client for user {1} told it was deleted", 3555// "[CLIENT]: Preventing full update for prim with local id {0} after client for user {1} told it was deleted",
3557// update.Entity.LocalId, Name); 3556// update.Entity.LocalId, Name);
3558 continue; 3557 continue;
3559 } 3558 }
3560 3559
3561 if (update.Entity is SceneObjectPart) 3560 if (update.Entity is SceneObjectPart)
3562 { 3561 {
3563 SceneObjectPart part = (SceneObjectPart)update.Entity; 3562 SceneObjectPart part = (SceneObjectPart)update.Entity;
@@ -3642,28 +3641,28 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3642// string text = sop.Text; 3641// string text = sop.Text;
3643// if (text.IndexOf("\n") >= 0) 3642// if (text.IndexOf("\n") >= 0)
3644// text = text.Remove(text.IndexOf("\n")); 3643// text = text.Remove(text.IndexOf("\n"));
3645// 3644//
3646// if (m_attachmentsSent.Contains(sop.ParentID)) 3645// if (m_attachmentsSent.Contains(sop.ParentID))
3647// { 3646// {
3648//// m_log.DebugFormat( 3647//// m_log.DebugFormat(
3649//// "[CLIENT]: Sending full info about attached prim {0} text {1}", 3648//// "[CLIENT]: Sending full info about attached prim {0} text {1}",
3650//// sop.LocalId, text); 3649//// sop.LocalId, text);
3651// 3650//
3652// objectUpdateBlocks.Value.Add(CreatePrimUpdateBlock(sop, this.m_agentId)); 3651// objectUpdateBlocks.Value.Add(CreatePrimUpdateBlock(sop, this.m_agentId));
3653// 3652//
3654// m_attachmentsSent.Add(sop.LocalId); 3653// m_attachmentsSent.Add(sop.LocalId);
3655// } 3654// }
3656// else 3655// else
3657// { 3656// {
3658// m_log.DebugFormat( 3657// m_log.DebugFormat(
3659// "[CLIENT]: Requeueing full update of prim {0} text {1} since we haven't sent its parent {2} yet", 3658// "[CLIENT]: Requeueing full update of prim {0} text {1} since we haven't sent its parent {2} yet",
3660// sop.LocalId, text, sop.ParentID); 3659// sop.LocalId, text, sop.ParentID);
3661// 3660//
3662// m_entityUpdates.Enqueue(double.MaxValue, update, sop.LocalId); 3661// m_entityUpdates.Enqueue(double.MaxValue, update, sop.LocalId);
3663// } 3662// }
3664// } 3663// }
3665// else 3664// else
3666// { 3665// {
3667 objectUpdateBlocks.Value.Add(CreatePrimUpdateBlock((SceneObjectPart)update.Entity, this.m_agentId)); 3666 objectUpdateBlocks.Value.Add(CreatePrimUpdateBlock((SceneObjectPart)update.Entity, this.m_agentId));
3668// } 3667// }
3669 } 3668 }
@@ -3977,7 +3976,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
3977 m_propertiesPacketTimer.Stop(); 3976 m_propertiesPacketTimer.Stop();
3978 return; 3977 return;
3979 } 3978 }
3980 3979
3981 m_propertiesPacketTimer.Stop(); 3980 m_propertiesPacketTimer.Stop();
3982 m_propertiesPacketTimer.Start(); 3981 m_propertiesPacketTimer.Start();
3983 } 3982 }
@@ -4208,7 +4207,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4208 4207
4209 public void SendLandProperties(int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags) 4208 public void SendLandProperties(int sequence_id, bool snap_selection, int request_result, LandData landData, float simObjectBonusFactor, int parcelObjectCapacity, int simObjectCapacity, uint regionFlags)
4210 { 4209 {
4211 ParcelPropertiesMessage updateMessage = new ParcelPropertiesMessage(); 4210 ParcelPropertiesMessage updateMessage = new ParcelPropertiesMessage();
4212 4211
4213 updateMessage.AABBMax = landData.AABBMax; 4212 updateMessage.AABBMax = landData.AABBMax;
4214 updateMessage.AABBMin = landData.AABBMin; 4213 updateMessage.AABBMin = landData.AABBMin;
@@ -4252,7 +4251,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4252 updateMessage.PassHours = landData.PassHours; 4251 updateMessage.PassHours = landData.PassHours;
4253 updateMessage.PassPrice = landData.PassPrice; 4252 updateMessage.PassPrice = landData.PassPrice;
4254 updateMessage.PublicCount = 0; //TODO: Unimplemented 4253 updateMessage.PublicCount = 0; //TODO: Unimplemented
4255 4254
4256 updateMessage.RegionPushOverride = (regionFlags & (uint)RegionFlags.RestrictPushObject) > 0; 4255 updateMessage.RegionPushOverride = (regionFlags & (uint)RegionFlags.RestrictPushObject) > 0;
4257 updateMessage.RegionDenyAnonymous = (regionFlags & (uint)RegionFlags.DenyAnonymous) > 0; 4256 updateMessage.RegionDenyAnonymous = (regionFlags & (uint)RegionFlags.DenyAnonymous) > 0;
4258 4257
@@ -4282,13 +4281,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4282 updateMessage.UserLocation = landData.UserLocation; 4281 updateMessage.UserLocation = landData.UserLocation;
4283 updateMessage.UserLookAt = landData.UserLookAt; 4282 updateMessage.UserLookAt = landData.UserLookAt;
4284 4283
4285 updateMessage.MediaType = landData.MediaType; 4284 updateMessage.MediaType = landData.MediaType;
4286 updateMessage.MediaDesc = landData.MediaDescription; 4285 updateMessage.MediaDesc = landData.MediaDescription;
4287 updateMessage.MediaWidth = landData.MediaWidth; 4286 updateMessage.MediaWidth = landData.MediaWidth;
4288 updateMessage.MediaHeight = landData.MediaHeight; 4287 updateMessage.MediaHeight = landData.MediaHeight;
4289 updateMessage.MediaLoop = landData.MediaLoop; 4288 updateMessage.MediaLoop = landData.MediaLoop;
4290 updateMessage.ObscureMusic = landData.ObscureMusic; 4289 updateMessage.ObscureMusic = landData.ObscureMusic;
4291 updateMessage.ObscureMedia = landData.ObscureMedia; 4290 updateMessage.ObscureMedia = landData.ObscureMedia;
4292 4291
4293 try 4292 try
4294 { 4293 {
@@ -4297,8 +4296,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4297 { 4296 {
4298 eq.ParcelProperties(updateMessage, this.AgentId); 4297 eq.ParcelProperties(updateMessage, this.AgentId);
4299 } else { 4298 } else {
4300 m_log.Warn("No EQ Interface when sending parcel data."); 4299 m_log.Warn("No EQ Interface when sending parcel data.");
4301 } 4300 }
4302 } 4301 }
4303 catch (Exception ex) 4302 catch (Exception ex)
4304 { 4303 {
@@ -4671,9 +4670,9 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4671 } 4670 }
4672 4671
4673// m_log.DebugFormat( 4672// m_log.DebugFormat(
4674// "[LLCLIENTVIEW]: Constructing client update for part {0} {1} with flags {2}, localId {3}", 4673// "[LLCLIENTVIEW]: Constructing client update for part {0} {1} with flags {2}, localId {3}",
4675// data.Name, update.FullID, flags, update.ID); 4674// data.Name, update.FullID, flags, update.ID);
4676 4675
4677 update.UpdateFlags = (uint)flags; 4676 update.UpdateFlags = (uint)flags;
4678 4677
4679 #endregion PrimFlags 4678 #endregion PrimFlags
@@ -4806,11 +4805,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4806 AddLocalPacketHandler(PacketType.ObjectScale, HandleObjectScale); 4805 AddLocalPacketHandler(PacketType.ObjectScale, HandleObjectScale);
4807 AddLocalPacketHandler(PacketType.ObjectRotation, HandleObjectRotation); 4806 AddLocalPacketHandler(PacketType.ObjectRotation, HandleObjectRotation);
4808 AddLocalPacketHandler(PacketType.ObjectFlagUpdate, HandleObjectFlagUpdate); 4807 AddLocalPacketHandler(PacketType.ObjectFlagUpdate, HandleObjectFlagUpdate);
4809 4808
4810 // Handle ObjectImage (TextureEntry) updates synchronously, since when updating multiple prim faces at once, 4809 // Handle ObjectImage (TextureEntry) updates synchronously, since when updating multiple prim faces at once,
4811 // some clients will send out a separate ObjectImage packet for each face 4810 // some clients will send out a separate ObjectImage packet for each face
4812 AddLocalPacketHandler(PacketType.ObjectImage, HandleObjectImage, false); 4811 AddLocalPacketHandler(PacketType.ObjectImage, HandleObjectImage, false);
4813 4812
4814 AddLocalPacketHandler(PacketType.ObjectGrab, HandleObjectGrab, false); 4813 AddLocalPacketHandler(PacketType.ObjectGrab, HandleObjectGrab, false);
4815 AddLocalPacketHandler(PacketType.ObjectGrabUpdate, HandleObjectGrabUpdate, false); 4814 AddLocalPacketHandler(PacketType.ObjectGrabUpdate, HandleObjectGrabUpdate, false);
4816 AddLocalPacketHandler(PacketType.ObjectDeGrab, HandleObjectDeGrab); 4815 AddLocalPacketHandler(PacketType.ObjectDeGrab, HandleObjectDeGrab);
@@ -5065,12 +5064,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5065 5064
5066 return false; 5065 return false;
5067 } 5066 }
5068 5067
5069 private bool HandleParcelGodMarkAsContent(IClientAPI client, Packet Packet) 5068 private bool HandleParcelGodMarkAsContent(IClientAPI client, Packet Packet)
5070 { 5069 {
5071 ParcelGodMarkAsContentPacket ParcelGodMarkAsContent = 5070 ParcelGodMarkAsContentPacket ParcelGodMarkAsContent =
5072 (ParcelGodMarkAsContentPacket)Packet; 5071 (ParcelGodMarkAsContentPacket)Packet;
5073 5072
5074 ParcelGodMark ParcelGodMarkAsContentHandler = OnParcelGodMark; 5073 ParcelGodMark ParcelGodMarkAsContentHandler = OnParcelGodMark;
5075 if (ParcelGodMarkAsContentHandler != null) 5074 if (ParcelGodMarkAsContentHandler != null)
5076 { 5075 {
@@ -5081,11 +5080,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5081 } 5080 }
5082 return false; 5081 return false;
5083 } 5082 }
5084 5083
5085 private bool HandleFreezeUser(IClientAPI client, Packet Packet) 5084 private bool HandleFreezeUser(IClientAPI client, Packet Packet)
5086 { 5085 {
5087 FreezeUserPacket FreezeUser = (FreezeUserPacket)Packet; 5086 FreezeUserPacket FreezeUser = (FreezeUserPacket)Packet;
5088 5087
5089 FreezeUserUpdate FreezeUserHandler = OnParcelFreezeUser; 5088 FreezeUserUpdate FreezeUserHandler = OnParcelFreezeUser;
5090 if (FreezeUserHandler != null) 5089 if (FreezeUserHandler != null)
5091 { 5090 {
@@ -5097,12 +5096,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5097 } 5096 }
5098 return false; 5097 return false;
5099 } 5098 }
5100 5099
5101 private bool HandleEjectUser(IClientAPI client, Packet Packet) 5100 private bool HandleEjectUser(IClientAPI client, Packet Packet)
5102 { 5101 {
5103 EjectUserPacket EjectUser = 5102 EjectUserPacket EjectUser =
5104 (EjectUserPacket)Packet; 5103 (EjectUserPacket)Packet;
5105 5104
5106 EjectUserUpdate EjectUserHandler = OnParcelEjectUser; 5105 EjectUserUpdate EjectUserHandler = OnParcelEjectUser;
5107 if (EjectUserHandler != null) 5106 if (EjectUserHandler != null)
5108 { 5107 {
@@ -5114,12 +5113,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5114 } 5113 }
5115 return false; 5114 return false;
5116 } 5115 }
5117 5116
5118 private bool HandleParcelBuyPass(IClientAPI client, Packet Packet) 5117 private bool HandleParcelBuyPass(IClientAPI client, Packet Packet)
5119 { 5118 {
5120 ParcelBuyPassPacket ParcelBuyPass = 5119 ParcelBuyPassPacket ParcelBuyPass =
5121 (ParcelBuyPassPacket)Packet; 5120 (ParcelBuyPassPacket)Packet;
5122 5121
5123 ParcelBuyPass ParcelBuyPassHandler = OnParcelBuyPass; 5122 ParcelBuyPass ParcelBuyPassHandler = OnParcelBuyPass;
5124 if (ParcelBuyPassHandler != null) 5123 if (ParcelBuyPassHandler != null)
5125 { 5124 {
@@ -5130,7 +5129,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5130 } 5129 }
5131 return false; 5130 return false;
5132 } 5131 }
5133 5132
5134 private bool HandleParcelBuyRequest(IClientAPI sender, Packet Pack) 5133 private bool HandleParcelBuyRequest(IClientAPI sender, Packet Pack)
5135 { 5134 {
5136 ParcelBuyPacket parcel = (ParcelBuyPacket)Pack; 5135 ParcelBuyPacket parcel = (ParcelBuyPacket)Pack;
@@ -5352,7 +5351,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5352 ScriptDialogReplyPacket rdialog = (ScriptDialogReplyPacket)Pack; 5351 ScriptDialogReplyPacket rdialog = (ScriptDialogReplyPacket)Pack;
5353 5352
5354 //m_log.DebugFormat("[CLIENT]: Received ScriptDialogReply from {0}", rdialog.Data.ObjectID); 5353 //m_log.DebugFormat("[CLIENT]: Received ScriptDialogReply from {0}", rdialog.Data.ObjectID);
5355 5354
5356 #region Packet Session and User Check 5355 #region Packet Session and User Check
5357 if (m_checkPackets) 5356 if (m_checkPackets)
5358 { 5357 {
@@ -5498,12 +5497,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5498 } 5497 }
5499 return true; 5498 return true;
5500 } 5499 }
5501 5500
5502 private bool HandleFindAgent(IClientAPI client, Packet Packet) 5501 private bool HandleFindAgent(IClientAPI client, Packet Packet)
5503 { 5502 {
5504 FindAgentPacket FindAgent = 5503 FindAgentPacket FindAgent =
5505 (FindAgentPacket)Packet; 5504 (FindAgentPacket)Packet;
5506 5505
5507 FindAgentUpdate FindAgentHandler = OnFindAgent; 5506 FindAgentUpdate FindAgentHandler = OnFindAgent;
5508 if (FindAgentHandler != null) 5507 if (FindAgentHandler != null)
5509 { 5508 {
@@ -5512,12 +5511,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5512 } 5511 }
5513 return false; 5512 return false;
5514 } 5513 }
5515 5514
5516 private bool HandleTrackAgent(IClientAPI client, Packet Packet) 5515 private bool HandleTrackAgent(IClientAPI client, Packet Packet)
5517 { 5516 {
5518 TrackAgentPacket TrackAgent = 5517 TrackAgentPacket TrackAgent =
5519 (TrackAgentPacket)Packet; 5518 (TrackAgentPacket)Packet;
5520 5519
5521 TrackAgentUpdate TrackAgentHandler = OnTrackAgent; 5520 TrackAgentUpdate TrackAgentHandler = OnTrackAgent;
5522 if (TrackAgentHandler != null) 5521 if (TrackAgentHandler != null)
5523 { 5522 {
@@ -5528,7 +5527,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
5528 } 5527 }
5529 return false; 5528 return false;
5530 } 5529 }
5531 5530
5532 private bool HandlerRezObject(IClientAPI sender, Packet Pack) 5531 private bool HandlerRezObject(IClientAPI sender, Packet Pack)
5533 { 5532 {
5534 RezObjectPacket rezPacket = (RezObjectPacket)Pack; 5533 RezObjectPacket rezPacket = (RezObjectPacket)Pack;
@@ -7184,19 +7183,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7184 UUID requestID = new UUID(transfer.TransferInfo.Params, 80); 7183 UUID requestID = new UUID(transfer.TransferInfo.Params, 80);
7185 7184
7186// m_log.DebugFormat( 7185// m_log.DebugFormat(
7187// "[CLIENT]: Got request for asset {0} from item {1} in prim {2} by {3}", 7186// "[CLIENT]: Got request for asset {0} from item {1} in prim {2} by {3}",
7188// requestID, itemID, taskID, Name); 7187// requestID, itemID, taskID, Name);
7189 7188
7190 if (!(((Scene)m_scene).Permissions.BypassPermissions())) 7189 if (!(((Scene)m_scene).Permissions.BypassPermissions()))
7191 { 7190 {
7192 if (taskID != UUID.Zero) // Prim 7191 if (taskID != UUID.Zero) // Prim
7193 { 7192 {
7194 SceneObjectPart part = ((Scene)m_scene).GetSceneObjectPart(taskID); 7193 SceneObjectPart part = ((Scene)m_scene).GetSceneObjectPart(taskID);
7195 7194
7196 if (part == null) 7195 if (part == null)
7197 { 7196 {
7198 m_log.WarnFormat( 7197 m_log.WarnFormat(
7199 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but prim does not exist", 7198 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but prim does not exist",
7200 Name, requestID, itemID, taskID); 7199 Name, requestID, itemID, taskID);
7201 return true; 7200 return true;
7202 } 7201 }
@@ -7205,11 +7204,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7205 if (tii == null) 7204 if (tii == null)
7206 { 7205 {
7207 m_log.WarnFormat( 7206 m_log.WarnFormat(
7208 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but item does not exist", 7207 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but item does not exist",
7209 Name, requestID, itemID, taskID); 7208 Name, requestID, itemID, taskID);
7210 return true; 7209 return true;
7211 } 7210 }
7212 7211
7213 if (tii.Type == (int)AssetType.LSLText) 7212 if (tii.Type == (int)AssetType.LSLText)
7214 { 7213 {
7215 if (!((Scene)m_scene).Permissions.CanEditScript(itemID, taskID, AgentId)) 7214 if (!((Scene)m_scene).Permissions.CanEditScript(itemID, taskID, AgentId))
@@ -7228,41 +7227,41 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7228 { 7227 {
7229 m_log.WarnFormat( 7228 m_log.WarnFormat(
7230 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but the prim is owned by {4}", 7229 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but the prim is owned by {4}",
7231 Name, requestID, itemID, taskID, part.OwnerID); 7230 Name, requestID, itemID, taskID, part.OwnerID);
7232 return true; 7231 return true;
7233 } 7232 }
7234 7233
7235 if ((part.OwnerMask & (uint)PermissionMask.Modify) == 0) 7234 if ((part.OwnerMask & (uint)PermissionMask.Modify) == 0)
7236 { 7235 {
7237 m_log.WarnFormat( 7236 m_log.WarnFormat(
7238 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but modify permissions are not set", 7237 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but modify permissions are not set",
7239 Name, requestID, itemID, taskID); 7238 Name, requestID, itemID, taskID);
7240 return true; 7239 return true;
7241 } 7240 }
7242 7241
7243 if (tii.OwnerID != AgentId) 7242 if (tii.OwnerID != AgentId)
7244 { 7243 {
7245 m_log.WarnFormat( 7244 m_log.WarnFormat(
7246 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but the item is owned by {4}", 7245 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but the item is owned by {4}",
7247 Name, requestID, itemID, taskID, tii.OwnerID); 7246 Name, requestID, itemID, taskID, tii.OwnerID);
7248 return true; 7247 return true;
7249 } 7248 }
7250 7249
7251 if (( 7250 if ((
7252 tii.CurrentPermissions & ((uint)PermissionMask.Modify | (uint)PermissionMask.Copy | (uint)PermissionMask.Transfer)) 7251 tii.CurrentPermissions & ((uint)PermissionMask.Modify | (uint)PermissionMask.Copy | (uint)PermissionMask.Transfer))
7253 != ((uint)PermissionMask.Modify | (uint)PermissionMask.Copy | (uint)PermissionMask.Transfer)) 7252 != ((uint)PermissionMask.Modify | (uint)PermissionMask.Copy | (uint)PermissionMask.Transfer))
7254 { 7253 {
7255 m_log.WarnFormat( 7254 m_log.WarnFormat(
7256 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but item permissions are not modify/copy/transfer", 7255 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but item permissions are not modify/copy/transfer",
7257 Name, requestID, itemID, taskID); 7256 Name, requestID, itemID, taskID);
7258 return true; 7257 return true;
7259 } 7258 }
7260 7259
7261 if (tii.AssetID != requestID) 7260 if (tii.AssetID != requestID)
7262 { 7261 {
7263 m_log.WarnFormat( 7262 m_log.WarnFormat(
7264 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but this does not match item's asset {4}", 7263 "[CLIENT]: {0} requested asset {1} from item {2} in prim {3} but this does not match item's asset {4}",
7265 Name, requestID, itemID, taskID, tii.AssetID); 7264 Name, requestID, itemID, taskID, tii.AssetID);
7266 return true; 7265 return true;
7267 } 7266 }
7268 } 7267 }
@@ -7866,7 +7865,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
7866 newTaskItem, updatetask.UpdateData.LocalID); 7865 newTaskItem, updatetask.UpdateData.LocalID);
7867 } 7866 }
7868 } 7867 }
7869 } 7868 }
7870 7869
7871 return true; 7870 return true;
7872 } 7871 }
@@ -8861,7 +8860,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8861 8860
8862// return true; 8861// return true;
8863 } 8862 }
8864 8863
8865 private bool HandleRequestRegionInfo(IClientAPI sender, Packet Pack) 8864 private bool HandleRequestRegionInfo(IClientAPI sender, Packet Pack)
8866 { 8865 {
8867 RequestRegionInfoPacket.AgentDataBlock mPacket = ((RequestRegionInfoPacket)Pack).AgentData; 8866 RequestRegionInfoPacket.AgentDataBlock mPacket = ((RequestRegionInfoPacket)Pack).AgentData;
@@ -8882,7 +8881,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8882 } 8881 }
8883 return true; 8882 return true;
8884 } 8883 }
8885 8884
8886 private bool HandleEstateCovenantRequest(IClientAPI sender, Packet Pack) 8885 private bool HandleEstateCovenantRequest(IClientAPI sender, Packet Pack)
8887 { 8886 {
8888 8887
@@ -8919,7 +8918,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8919 8918
8920 return true; 8919 return true;
8921 } 8920 }
8922 8921
8923 private bool HandleGodUpdateRegionInfoUpdate(IClientAPI client, Packet Packet) 8922 private bool HandleGodUpdateRegionInfoUpdate(IClientAPI client, Packet Packet)
8924 { 8923 {
8925 GodUpdateRegionInfoPacket GodUpdateRegionInfo = 8924 GodUpdateRegionInfoPacket GodUpdateRegionInfo =
@@ -8939,7 +8938,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8939 } 8938 }
8940 return false; 8939 return false;
8941 } 8940 }
8942 8941
8943 private bool HandleSimWideDeletes(IClientAPI client, Packet Packet) 8942 private bool HandleSimWideDeletes(IClientAPI client, Packet Packet)
8944 { 8943 {
8945 SimWideDeletesPacket SimWideDeletesRequest = 8944 SimWideDeletesPacket SimWideDeletesRequest =
@@ -8952,7 +8951,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8952 } 8951 }
8953 return false; 8952 return false;
8954 } 8953 }
8955 8954
8956 private bool HandleGodlikeMessage(IClientAPI client, Packet Packet) 8955 private bool HandleGodlikeMessage(IClientAPI client, Packet Packet)
8957 { 8956 {
8958 GodlikeMessagePacket GodlikeMessage = 8957 GodlikeMessagePacket GodlikeMessage =
@@ -8969,7 +8968,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8969 } 8968 }
8970 return false; 8969 return false;
8971 } 8970 }
8972 8971
8973 private bool HandleSaveStatePacket(IClientAPI client, Packet Packet) 8972 private bool HandleSaveStatePacket(IClientAPI client, Packet Packet)
8974 { 8973 {
8975 StateSavePacket SaveStateMessage = 8974 StateSavePacket SaveStateMessage =
@@ -8982,7 +8981,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
8982 } 8981 }
8983 return false; 8982 return false;
8984 } 8983 }
8985 8984
8986 private bool HandleGodKickUser(IClientAPI sender, Packet Pack) 8985 private bool HandleGodKickUser(IClientAPI sender, Packet Pack)
8987 { 8986 {
8988 GodKickUserPacket gkupack = (GodKickUserPacket)Pack; 8987 GodKickUserPacket gkupack = (GodKickUserPacket)Pack;
@@ -9120,7 +9119,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9120 } 9119 }
9121 return true; 9120 return true;
9122 } 9121 }
9123 9122
9124 #endregion Economy/Transaction Packets 9123 #endregion Economy/Transaction Packets
9125 9124
9126 #region Script Packets 9125 #region Script Packets
@@ -9333,7 +9332,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9333 } 9332 }
9334 return true; 9333 return true;
9335 } 9334 }
9336 9335
9337 private bool HandleUpdateMuteListEntry(IClientAPI client, Packet Packet) 9336 private bool HandleUpdateMuteListEntry(IClientAPI client, Packet Packet)
9338 { 9337 {
9339 UpdateMuteListEntryPacket UpdateMuteListEntry = 9338 UpdateMuteListEntryPacket UpdateMuteListEntry =
@@ -9349,7 +9348,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9349 } 9348 }
9350 return false; 9349 return false;
9351 } 9350 }
9352 9351
9353 private bool HandleRemoveMuteListEntry(IClientAPI client, Packet Packet) 9352 private bool HandleRemoveMuteListEntry(IClientAPI client, Packet Packet)
9354 { 9353 {
9355 RemoveMuteListEntryPacket RemoveMuteListEntry = 9354 RemoveMuteListEntryPacket RemoveMuteListEntry =
@@ -9365,7 +9364,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9365 } 9364 }
9366 return false; 9365 return false;
9367 } 9366 }
9368 9367
9369 private bool HandleUserReport(IClientAPI client, Packet Packet) 9368 private bool HandleUserReport(IClientAPI client, Packet Packet)
9370 { 9369 {
9371 UserReportPacket UserReport = 9370 UserReportPacket UserReport =
@@ -9390,7 +9389,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9390 } 9389 }
9391 return false; 9390 return false;
9392 } 9391 }
9393 9392
9394 private bool HandleSendPostcard(IClientAPI client, Packet packet) 9393 private bool HandleSendPostcard(IClientAPI client, Packet packet)
9395 { 9394 {
9396// SendPostcardPacket SendPostcard = 9395// SendPostcardPacket SendPostcard =
@@ -9672,7 +9671,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9672 return true; 9671 return true;
9673 9672
9674 } 9673 }
9675 9674
9676 private bool HandleGroupVoteHistoryRequest(IClientAPI client, Packet Packet) 9675 private bool HandleGroupVoteHistoryRequest(IClientAPI client, Packet Packet)
9677 { 9676 {
9678 GroupVoteHistoryRequestPacket GroupVoteHistoryRequest = 9677 GroupVoteHistoryRequestPacket GroupVoteHistoryRequest =
@@ -9685,7 +9684,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9685 } 9684 }
9686 return false; 9685 return false;
9687 } 9686 }
9688 9687
9689 private bool HandleGroupActiveProposalsRequest(IClientAPI client, Packet Packet) 9688 private bool HandleGroupActiveProposalsRequest(IClientAPI client, Packet Packet)
9690 { 9689 {
9691 GroupActiveProposalsRequestPacket GroupActiveProposalsRequest = 9690 GroupActiveProposalsRequestPacket GroupActiveProposalsRequest =
@@ -9698,7 +9697,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9698 } 9697 }
9699 return false; 9698 return false;
9700 } 9699 }
9701 9700
9702 private bool HandleGroupAccountDetailsRequest(IClientAPI client, Packet Packet) 9701 private bool HandleGroupAccountDetailsRequest(IClientAPI client, Packet Packet)
9703 { 9702 {
9704 GroupAccountDetailsRequestPacket GroupAccountDetailsRequest = 9703 GroupAccountDetailsRequestPacket GroupAccountDetailsRequest =
@@ -9711,7 +9710,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9711 } 9710 }
9712 return false; 9711 return false;
9713 } 9712 }
9714 9713
9715 private bool HandleGroupAccountSummaryRequest(IClientAPI client, Packet Packet) 9714 private bool HandleGroupAccountSummaryRequest(IClientAPI client, Packet Packet)
9716 { 9715 {
9717 GroupAccountSummaryRequestPacket GroupAccountSummaryRequest = 9716 GroupAccountSummaryRequestPacket GroupAccountSummaryRequest =
@@ -9724,7 +9723,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9724 } 9723 }
9725 return false; 9724 return false;
9726 } 9725 }
9727 9726
9728 private bool HandleGroupTransactionsDetailsRequest(IClientAPI client, Packet Packet) 9727 private bool HandleGroupTransactionsDetailsRequest(IClientAPI client, Packet Packet)
9729 { 9728 {
9730 GroupAccountTransactionsRequestPacket GroupAccountTransactionsRequest = 9729 GroupAccountTransactionsRequestPacket GroupAccountTransactionsRequest =
@@ -9737,7 +9736,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
9737 } 9736 }
9738 return false; 9737 return false;
9739 } 9738 }
9740 9739
9741 private bool HandleGroupTitlesRequest(IClientAPI sender, Packet Pack) 9740 private bool HandleGroupTitlesRequest(IClientAPI sender, Packet Pack)
9742 { 9741 {
9743 GroupTitlesRequestPacket groupTitlesRequest = 9742 GroupTitlesRequestPacket groupTitlesRequest =
@@ -11185,26 +11184,25 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11185 if (m_debugPacketLevel > 0) 11184 if (m_debugPacketLevel > 0)
11186 { 11185 {
11187 bool outputPacket = true; 11186 bool outputPacket = true;
11188 11187
11189 if (m_debugPacketLevel <= 255 11188 if (m_debugPacketLevel <= 255
11190 && (packet.Type == PacketType.SimStats || packet.Type == PacketType.SimulatorViewerTimeMessage)) 11189 && (packet.Type == PacketType.SimStats || packet.Type == PacketType.SimulatorViewerTimeMessage))
11191 outputPacket = false; 11190 outputPacket = false;
11192 11191
11193 if (m_debugPacketLevel <= 200 11192 if (m_debugPacketLevel <= 200
11194 && 11193 && (packet.Type == PacketType.ImagePacket
11195 (packet.Type == PacketType.ImagePacket
11196 || packet.Type == PacketType.ImageData 11194 || packet.Type == PacketType.ImageData
11197 || packet.Type == PacketType.LayerData 11195 || packet.Type == PacketType.LayerData
11198 || packet.Type == PacketType.CoarseLocationUpdate)) 11196 || packet.Type == PacketType.CoarseLocationUpdate))
11199 outputPacket = false; 11197 outputPacket = false;
11200 11198
11201 if (m_debugPacketLevel <= 100 && (packet.Type == PacketType.AvatarAnimation || packet.Type == PacketType.ViewerEffect)) 11199 if (m_debugPacketLevel <= 100 && (packet.Type == PacketType.AvatarAnimation || packet.Type == PacketType.ViewerEffect))
11202 outputPacket = false; 11200 outputPacket = false;
11203 11201
11204 if (outputPacket) 11202 if (outputPacket)
11205 m_log.DebugFormat("[CLIENT]: Packet OUT {0}", packet.Type); 11203 m_log.DebugFormat("[CLIENT]: Packet OUT {0}", packet.Type);
11206 } 11204 }
11207 11205
11208 m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, doAutomaticSplitting); 11206 m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, doAutomaticSplitting);
11209 } 11207 }
11210 11208
@@ -11279,16 +11277,16 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11279 if (m_debugPacketLevel > 0) 11277 if (m_debugPacketLevel > 0)
11280 { 11278 {
11281 bool outputPacket = true; 11279 bool outputPacket = true;
11282 11280
11283 if (m_debugPacketLevel <= 255 && packet.Type == PacketType.AgentUpdate) 11281 if (m_debugPacketLevel <= 255 && packet.Type == PacketType.AgentUpdate)
11284 outputPacket = false; 11282 outputPacket = false;
11285 11283
11286 if (m_debugPacketLevel <= 200 && packet.Type == PacketType.RequestImage) 11284 if (m_debugPacketLevel <= 200 && packet.Type == PacketType.RequestImage)
11287 outputPacket = false; 11285 outputPacket = false;
11288 11286
11289 if (m_debugPacketLevel <= 100 && (packet.Type == PacketType.ViewerEffect || packet.Type == PacketType.AgentAnimation)) 11287 if (m_debugPacketLevel <= 100 && (packet.Type == PacketType.ViewerEffect || packet.Type == PacketType.AgentAnimation))
11290 outputPacket = false; 11288 outputPacket = false;
11291 11289
11292 if (outputPacket) 11290 if (outputPacket)
11293 m_log.DebugFormat("[CLIENT]: Packet IN {0}", packet.Type); 11291 m_log.DebugFormat("[CLIENT]: Packet IN {0}", packet.Type);
11294 } 11292 }
@@ -11551,12 +11549,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11551 11549
11552 UUID requestID = UUID.Zero; 11550 UUID requestID = UUID.Zero;
11553 byte source = (byte)SourceType.Asset; 11551 byte source = (byte)SourceType.Asset;
11554 11552
11555 if (transferRequest.TransferInfo.SourceType == (int)SourceType.Asset) 11553 if (transferRequest.TransferInfo.SourceType == (int)SourceType.Asset)
11556 { 11554 {
11557 requestID = new UUID(transferRequest.TransferInfo.Params, 0); 11555 requestID = new UUID(transferRequest.TransferInfo.Params, 0);
11558 } 11556 }
11559 else if (transferRequest.TransferInfo.SourceType == (int)SourceType.SimInventoryItem) 11557 else if (transferRequest.TransferInfo.SourceType == (int)SourceType.SimInventoryItem)
11560 { 11558 {
11561 requestID = new UUID(transferRequest.TransferInfo.Params, 80); 11559 requestID = new UUID(transferRequest.TransferInfo.Params, 80);
11562 source = (byte)SourceType.SimInventoryItem; 11560 source = (byte)SourceType.SimInventoryItem;
@@ -11802,7 +11800,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11802 public PacketMethod method; 11800 public PacketMethod method;
11803 public bool Async; 11801 public bool Async;
11804 } 11802 }
11805 11803
11806 public class AsyncPacketProcess 11804 public class AsyncPacketProcess
11807 { 11805 {
11808 public bool result = false; 11806 public bool result = false;
@@ -11871,8 +11869,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11871 dialog.Data.FirstName = Util.StringToBytes256(ownerFirstName); 11869 dialog.Data.FirstName = Util.StringToBytes256(ownerFirstName);
11872 dialog.Data.LastName = Util.StringToBytes256(ownerLastName); 11870 dialog.Data.LastName = Util.StringToBytes256(ownerLastName);
11873 dialog.Data.Message = Util.StringToBytes256(message); 11871 dialog.Data.Message = Util.StringToBytes256(message);
11874 11872
11875
11876 ScriptDialogPacket.ButtonsBlock[] buttons = new ScriptDialogPacket.ButtonsBlock[1]; 11873 ScriptDialogPacket.ButtonsBlock[] buttons = new ScriptDialogPacket.ButtonsBlock[1];
11877 buttons[0] = new ScriptDialogPacket.ButtonsBlock(); 11874 buttons[0] = new ScriptDialogPacket.ButtonsBlock();
11878 buttons[0].ButtonLabel = Util.StringToBytes256("!!llTextBox!!"); 11875 buttons[0].ButtonLabel = Util.StringToBytes256("!!llTextBox!!");
@@ -11886,7 +11883,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11886 { 11883 {
11887 ScenePresence presence = p as ScenePresence; 11884 ScenePresence presence = p as ScenePresence;
11888 // It turns out to get the agent to stop flying, you have to feed it stop flying velocities 11885 // It turns out to get the agent to stop flying, you have to feed it stop flying velocities
11889 // There's no explicit message to send the client to tell it to stop flying.. it relies on the 11886 // There's no explicit message to send the client to tell it to stop flying.. it relies on the
11890 // velocity, collision plane and avatar height 11887 // velocity, collision plane and avatar height
11891 11888
11892 // Add 1/6 the avatar's height to it's position so it doesn't shoot into the air 11889 // Add 1/6 the avatar's height to it's position so it doesn't shoot into the air
@@ -11903,7 +11900,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
11903 11900
11904 // attach a suitable collision plane regardless of the actual situation to force the LLClient to land. 11901 // attach a suitable collision plane regardless of the actual situation to force the LLClient to land.
11905 // Collision plane below the avatar's position a 6th of the avatar's height is suitable. 11902 // Collision plane below the avatar's position a 6th of the avatar's height is suitable.
11906 // Mind you, that this method doesn't get called if the avatar's velocity magnitude is greater then a 11903 // Mind you, that this method doesn't get called if the avatar's velocity magnitude is greater then a
11907 // certain amount.. because the LLClient wouldn't land in that situation anyway. 11904 // certain amount.. because the LLClient wouldn't land in that situation anyway.
11908 11905
11909 // why are we still testing for this really old height value default??? 11906 // why are we still testing for this really old height value default???
diff --git a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
index 7270304..5604f49 100644
--- a/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
@@ -48,8 +48,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
48 48
49 protected Scene m_scene = null; 49 protected Scene m_scene = null;
50 50
51 public string Name { get { return "Attachments Module"; } } 51 public string Name { get { return "Attachments Module"; } }
52 public Type ReplaceableInterface { get { return null; } } 52 public Type ReplaceableInterface { get { return null; } }
53 53
54 public void Initialise(IConfigSource source) {} 54 public void Initialise(IConfigSource source) {}
55 55
@@ -80,7 +80,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
80 client.OnRezMultipleAttachmentsFromInv += RezMultipleAttachmentsFromInventory; 80 client.OnRezMultipleAttachmentsFromInv += RezMultipleAttachmentsFromInventory;
81 client.OnObjectAttach += AttachObject; 81 client.OnObjectAttach += AttachObject;
82 client.OnObjectDetach += DetachObject; 82 client.OnObjectDetach += DetachObject;
83 client.OnDetachAttachmentIntoInv += ShowDetachInUserInventory; 83 client.OnDetachAttachmentIntoInv += ShowDetachInUserInventory;
84 } 84 }
85 85
86 public void UnsubscribeFromClientEvents(IClientAPI client) 86 public void UnsubscribeFromClientEvents(IClientAPI client)
@@ -89,7 +89,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
89 client.OnRezMultipleAttachmentsFromInv -= RezMultipleAttachmentsFromInventory; 89 client.OnRezMultipleAttachmentsFromInv -= RezMultipleAttachmentsFromInventory;
90 client.OnObjectAttach -= AttachObject; 90 client.OnObjectAttach -= AttachObject;
91 client.OnObjectDetach -= DetachObject; 91 client.OnObjectDetach -= DetachObject;
92 client.OnDetachAttachmentIntoInv -= ShowDetachInUserInventory; 92 client.OnDetachAttachmentIntoInv -= ShowDetachInUserInventory;
93 } 93 }
94 94
95 /// <summary> 95 /// <summary>
@@ -173,12 +173,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
173 UUID itemID = UUID.Zero; 173 UUID itemID = UUID.Zero;
174 if (sp != null) 174 if (sp != null)
175 { 175 {
176 foreach(SceneObjectGroup grp in sp.GetAttachments(AttachmentPt)) 176 foreach (SceneObjectGroup grp in sp.GetAttachments(AttachmentPt))
177 { 177 {
178 itemID = grp.GetFromItemID(); 178 itemID = grp.GetFromItemID();
179 if (itemID != UUID.Zero) 179 if (itemID != UUID.Zero)
180 DetachSingleAttachmentToInv(itemID, remoteClient); 180 DetachSingleAttachmentToInv(itemID, remoteClient);
181 } 181 }
182 } 182 }
183 183
184 if (group.GetFromItemID() == UUID.Zero) 184 if (group.GetFromItemID() == UUID.Zero)
@@ -225,7 +225,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
225 225
226 public UUID RezSingleAttachmentFromInventory( 226 public UUID RezSingleAttachmentFromInventory(
227 IClientAPI remoteClient, UUID itemID, uint AttachmentPt, bool updateInventoryStatus) 227 IClientAPI remoteClient, UUID itemID, uint AttachmentPt, bool updateInventoryStatus)
228 { 228 {
229 SceneObjectGroup att = RezSingleAttachmentFromInventoryInternal(remoteClient, itemID, AttachmentPt); 229 SceneObjectGroup att = RezSingleAttachmentFromInventoryInternal(remoteClient, itemID, AttachmentPt);
230 230
231 if (updateInventoryStatus) 231 if (updateInventoryStatus)
@@ -241,8 +241,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
241 if (null == att) 241 if (null == att)
242 return UUID.Zero; 242 return UUID.Zero;
243 else 243 else
244 return att.UUID; 244 return att.UUID;
245 } 245 }
246 246
247 protected SceneObjectGroup RezSingleAttachmentFromInventoryInternal( 247 protected SceneObjectGroup RezSingleAttachmentFromInventoryInternal(
248 IClientAPI remoteClient, UUID itemID, uint AttachmentPt) 248 IClientAPI remoteClient, UUID itemID, uint AttachmentPt)
@@ -298,7 +298,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
298 } 298 }
299 299
300 return null; 300 return null;
301 } 301 }
302 302
303 public UUID SetAttachmentInventoryStatus( 303 public UUID SetAttachmentInventoryStatus(
304 SceneObjectGroup att, IClientAPI remoteClient, UUID itemID, uint AttachmentPt) 304 SceneObjectGroup att, IClientAPI remoteClient, UUID itemID, uint AttachmentPt)
@@ -473,7 +473,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
473 sog.RootPart.IsAttachment = false; 473 sog.RootPart.IsAttachment = false;
474 sog.AbsolutePosition = sog.RootPart.AttachedPos; 474 sog.AbsolutePosition = sog.RootPart.AttachedPos;
475 UpdateKnownItem(client, sog, sog.GetFromItemID(), sog.OwnerID); 475 UpdateKnownItem(client, sog, sog.GetFromItemID(), sog.OwnerID);
476 sog.SetAttachmentPoint(attachmentPoint); 476 sog.SetAttachmentPoint(attachmentPoint);
477 } 477 }
478 478
479 /// <summary> 479 /// <summary>
@@ -600,7 +600,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
600 // In case it is later dropped again, don't let 600 // In case it is later dropped again, don't let
601 // it get cleaned up 601 // it get cleaned up
602 so.RootPart.RemFlag(PrimFlags.TemporaryOnRez); 602 so.RootPart.RemFlag(PrimFlags.TemporaryOnRez);
603 so.HasGroupChanged = false; 603 so.HasGroupChanged = false;
604 } 604 }
605 } 605 }
606} 606}
diff --git a/OpenSim/Region/CoreModules/Avatar/Combat/CombatModule.cs b/OpenSim/Region/CoreModules/Avatar/Combat/CombatModule.cs
index 032e55a..25322a1 100644
--- a/OpenSim/Region/CoreModules/Avatar/Combat/CombatModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Combat/CombatModule.cs
@@ -132,7 +132,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
132 try 132 try
133 { 133 {
134 deadAvatar.ControllingClient.SendAgentAlertMessage(deadAvatarMessage, true); 134 deadAvatar.ControllingClient.SendAgentAlertMessage(deadAvatarMessage, true);
135 if(killingAvatar != null) 135 if (killingAvatar != null)
136 killingAvatar.ControllingClient.SendAlertMessage("You fragged " + deadAvatar.Firstname + " " + deadAvatar.Lastname); 136 killingAvatar.ControllingClient.SendAlertMessage("You fragged " + deadAvatar.Firstname + " " + deadAvatar.Lastname);
137 } 137 }
138 catch (InvalidOperationException) 138 catch (InvalidOperationException)
@@ -143,7 +143,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
143 } 143 }
144 144
145 private void AvatarEnteringParcel(ScenePresence avatar, int localLandID, UUID regionID) 145 private void AvatarEnteringParcel(ScenePresence avatar, int localLandID, UUID regionID)
146 { 146 {
147 try 147 try
148 { 148 {
149 ILandObject obj = avatar.Scene.LandChannel.GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); 149 ILandObject obj = avatar.Scene.LandChannel.GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y);
diff --git a/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs b/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs
index 4b30b0d..5ec64d5 100644
--- a/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs
@@ -58,13 +58,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Gods
58 public void SubscribeToClientEvents(IClientAPI client) 58 public void SubscribeToClientEvents(IClientAPI client)
59 { 59 {
60 client.OnGodKickUser += KickUser; 60 client.OnGodKickUser += KickUser;
61 client.OnRequestGodlikePowers += RequestGodlikePowers; 61 client.OnRequestGodlikePowers += RequestGodlikePowers;
62 } 62 }
63 63
64 public void UnsubscribeFromClientEvents(IClientAPI client) 64 public void UnsubscribeFromClientEvents(IClientAPI client)
65 { 65 {
66 client.OnGodKickUser -= KickUser; 66 client.OnGodKickUser -= KickUser;
67 client.OnRequestGodlikePowers -= RequestGodlikePowers; 67 client.OnRequestGodlikePowers -= RequestGodlikePowers;
68 } 68 }
69 69
70 public void RequestGodlikePowers( 70 public void RequestGodlikePowers(
diff --git a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
index 13bae2e..43bbf0d 100644
--- a/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
@@ -137,7 +137,7 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
137 { 137 {
138 if (scene.Entities.ContainsKey(toAgentID) && 138 if (scene.Entities.ContainsKey(toAgentID) &&
139 scene.Entities[toAgentID] is ScenePresence) 139 scene.Entities[toAgentID] is ScenePresence)
140 { 140 {
141// m_log.DebugFormat( 141// m_log.DebugFormat(
142// "[INSTANT MESSAGE]: Looking for root agent {0} in {1}", 142// "[INSTANT MESSAGE]: Looking for root agent {0} in {1}",
143// toAgentID.ToString(), scene.RegionInfo.RegionName); 143// toAgentID.ToString(), scene.RegionInfo.RegionName);
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
index 52342ec..c1df827 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveReadRequest.cs
@@ -179,14 +179,14 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
179 m_log.DebugFormat( 179 m_log.DebugFormat(
180 "[INVENTORY ARCHIVER]: Successfully loaded {0} assets with {1} failures", 180 "[INVENTORY ARCHIVER]: Successfully loaded {0} assets with {1} failures",
181 successfulAssetRestores, failedAssetRestores); 181 successfulAssetRestores, failedAssetRestores);
182 m_log.InfoFormat("[INVENTORY ARCHIVER]: Successfully loaded {0} items", successfulItemRestores); 182 m_log.InfoFormat("[INVENTORY ARCHIVER]: Successfully loaded {0} items", successfulItemRestores);
183 183
184 return loadedNodes; 184 return loadedNodes;
185 } 185 }
186 finally 186 finally
187 { 187 {
188 m_loadStream.Close(); 188 m_loadStream.Close();
189 } 189 }
190 } 190 }
191 191
192 public void Close() 192 public void Close()
@@ -201,7 +201,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
201 /// <param name="iarPath">The item archive path to replicate</param> 201 /// <param name="iarPath">The item archive path to replicate</param>
202 /// <param name="rootDestinationFolder">The root folder for the inventory load</param> 202 /// <param name="rootDestinationFolder">The root folder for the inventory load</param>
203 /// <param name="resolvedFolders"> 203 /// <param name="resolvedFolders">
204 /// The folders that we have resolved so far for a given archive path. 204 /// The folders that we have resolved so far for a given archive path.
205 /// This method will add more folders if necessary 205 /// This method will add more folders if necessary
206 /// </param> 206 /// </param>
207 /// <param name="loadedNodes"> 207 /// <param name="loadedNodes">
@@ -246,17 +246,17 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
246 /// The root folder for the inventory load 246 /// The root folder for the inventory load
247 /// </param> 247 /// </param>
248 /// <param name="resolvedFolders"> 248 /// <param name="resolvedFolders">
249 /// The folders that we have resolved so far for a given archive path. 249 /// The folders that we have resolved so far for a given archive path.
250 /// </param> 250 /// </param>
251 /// <returns> 251 /// <returns>
252 /// The folder in the user's inventory that matches best the archive path given. If no such folder was found 252 /// The folder in the user's inventory that matches best the archive path given. If no such folder was found
253 /// then the passed in root destination folder is returned. 253 /// then the passed in root destination folder is returned.
254 /// </returns> 254 /// </returns>
255 protected InventoryFolderBase ResolveDestinationFolder( 255 protected InventoryFolderBase ResolveDestinationFolder(
256 InventoryFolderBase rootDestFolder, 256 InventoryFolderBase rootDestFolder,
257 ref string archivePath, 257 ref string archivePath,
258 Dictionary <string, InventoryFolderBase> resolvedFolders) 258 Dictionary <string, InventoryFolderBase> resolvedFolders)
259 { 259 {
260// string originalArchivePath = archivePath; 260// string originalArchivePath = archivePath;
261 261
262 while (archivePath.Length > 0) 262 while (archivePath.Length > 0)
@@ -370,7 +370,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
370 370
371 if (0 == i) 371 if (0 == i)
372 loadedNodes.Add(destFolder); 372 loadedNodes.Add(destFolder);
373 } 373 }
374 } 374 }
375 375
376 /// <summary> 376 /// <summary>
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
index 9908018..bae5a7a 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs
@@ -119,7 +119,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
119 protected void ReceivedAllAssets(ICollection<UUID> assetsFoundUuids, ICollection<UUID> assetsNotFoundUuids) 119 protected void ReceivedAllAssets(ICollection<UUID> assetsFoundUuids, ICollection<UUID> assetsNotFoundUuids)
120 { 120 {
121 Exception reportedException = null; 121 Exception reportedException = null;
122 bool succeeded = true; 122 bool succeeded = true;
123 123
124 try 124 try
125 { 125 {
@@ -136,7 +136,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
136 finally 136 finally
137 { 137 {
138 m_saveStream.Close(); 138 m_saveStream.Close();
139 } 139 }
140 140
141 m_module.TriggerInventoryArchiveSaved( 141 m_module.TriggerInventoryArchiveSaved(
142 m_id, succeeded, m_userInfo, m_invPath, m_saveStream, reportedException); 142 m_id, succeeded, m_userInfo, m_invPath, m_saveStream, reportedException);
@@ -270,7 +270,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
270 { 270 {
271 // We couldn't find the path indicated 271 // We couldn't find the path indicated
272 string errorMessage = string.Format("Aborted save. Could not find inventory path {0}", m_invPath); 272 string errorMessage = string.Format("Aborted save. Could not find inventory path {0}", m_invPath);
273 Exception e = new InventoryArchiverException(errorMessage); 273 Exception e = new InventoryArchiverException(errorMessage);
274 m_module.TriggerInventoryArchiveSaved(m_id, false, m_userInfo, m_invPath, m_saveStream, e); 274 m_module.TriggerInventoryArchiveSaved(m_id, false, m_userInfo, m_invPath, m_saveStream, e);
275 throw e; 275 throw e;
276 } 276 }
@@ -283,7 +283,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
283 "[INVENTORY ARCHIVER]: Found folder {0} {1} at {2}", 283 "[INVENTORY ARCHIVER]: Found folder {0} {1} at {2}",
284 inventoryFolder.Name, 284 inventoryFolder.Name,
285 inventoryFolder.ID, 285 inventoryFolder.ID,
286 m_invPath == String.Empty ? InventoryFolderImpl.PATH_DELIMITER : m_invPath ); 286 m_invPath == String.Empty ? InventoryFolderImpl.PATH_DELIMITER : m_invPath);
287 287
288 //recurse through all dirs getting dirs and files 288 //recurse through all dirs getting dirs and files
289 SaveInvFolder(inventoryFolder, ArchiveConstants.INVENTORY_PATH, !saveFolderContentsOnly); 289 SaveInvFolder(inventoryFolder, ArchiveConstants.INVENTORY_PATH, !saveFolderContentsOnly);
@@ -301,7 +301,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
301 //SaveUsers(); 301 //SaveUsers();
302 302
303 new AssetsRequest( 303 new AssetsRequest(
304 new AssetsArchiver(m_archiveWriter), m_assetUuids, m_scene.AssetService, ReceivedAllAssets).Execute(); 304 new AssetsArchiver(m_archiveWriter), m_assetUuids, m_scene.AssetService, ReceivedAllAssets).Execute();
305 } 305 }
306 catch (Exception) 306 catch (Exception)
307 { 307 {
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverException.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverException.cs
index e07e2ca..5fd1a7e 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverException.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverException.cs
@@ -33,7 +33,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
33 /// Signals an inventory archiving problem 33 /// Signals an inventory archiving problem
34 /// </summary> 34 /// </summary>
35 public class InventoryArchiverException : Exception 35 public class InventoryArchiverException : Exception
36 { 36 {
37 public InventoryArchiverException(string message) : base(message) {} 37 public InventoryArchiverException(string message) : base(message) {}
38 public InventoryArchiverException(string message, Exception e) : base(message, e) {} 38 public InventoryArchiverException(string message, Exception e) : base(message, e) {}
39 } 39 }
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs
index f03f2a1..2eaca49 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiverModule.cs
@@ -91,12 +91,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
91 91
92 scene.AddCommand( 92 scene.AddCommand(
93 this, "load iar", 93 this, "load iar",
94 "load iar <first> <last> <inventory path> <password> [<IAR path>]", 94 "load iar <first> <last> <inventory path> <password> [<IAR path>]",
95 //"load iar [--merge] <first> <last> <inventory path> <password> [<IAR path>]", 95 //"load iar [--merge] <first> <last> <inventory path> <password> [<IAR path>]",
96 "Load user inventory archive (IAR).", 96 "Load user inventory archive (IAR).",
97 //"--merge is an option which merges the loaded IAR with existing inventory folders where possible, rather than always creating new ones" 97 //"--merge is an option which merges the loaded IAR with existing inventory folders where possible, rather than always creating new ones"
98 //+ "<first> is user's first name." + Environment.NewLine 98 //+ "<first> is user's first name." + Environment.NewLine
99 "<first> is user's first name." + Environment.NewLine 99 "<first> is user's first name." + Environment.NewLine
100 + "<last> is user's last name." + Environment.NewLine 100 + "<last> is user's last name." + Environment.NewLine
101 + "<inventory path> is the path inside the user's inventory where the IAR should be loaded." + Environment.NewLine 101 + "<inventory path> is the path inside the user's inventory where the IAR should be loaded." + Environment.NewLine
102 + "<password> is the user's password." + Environment.NewLine 102 + "<password> is the user's password." + Environment.NewLine
@@ -241,7 +241,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
241 if (CheckPresence(userInfo.PrincipalID)) 241 if (CheckPresence(userInfo.PrincipalID))
242 { 242 {
243 InventoryArchiveReadRequest request; 243 InventoryArchiveReadRequest request;
244 bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false); 244 bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false);
245 245
246 try 246 try
247 { 247 {
@@ -286,10 +286,10 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
286 if (CheckPresence(userInfo.PrincipalID)) 286 if (CheckPresence(userInfo.PrincipalID))
287 { 287 {
288 InventoryArchiveReadRequest request; 288 InventoryArchiveReadRequest request;
289 bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false); 289 bool merge = (options.ContainsKey("merge") ? (bool)options["merge"] : false);
290 290
291 try 291 try
292 { 292 {
293 request = new InventoryArchiveReadRequest(m_aScene, userInfo, invPath, loadPath, merge); 293 request = new InventoryArchiveReadRequest(m_aScene, userInfo, invPath, loadPath, merge);
294 } 294 }
295 catch (EntryPointNotFoundException e) 295 catch (EntryPointNotFoundException e)
@@ -325,20 +325,20 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
325 protected void HandleLoadInvConsoleCommand(string module, string[] cmdparams) 325 protected void HandleLoadInvConsoleCommand(string module, string[] cmdparams)
326 { 326 {
327 try 327 try
328 { 328 {
329 m_log.Info("[INVENTORY ARCHIVER]: PLEASE NOTE THAT THIS FACILITY IS EXPERIMENTAL. BUG REPORTS WELCOME."); 329 m_log.Info("[INVENTORY ARCHIVER]: PLEASE NOTE THAT THIS FACILITY IS EXPERIMENTAL. BUG REPORTS WELCOME.");
330 330
331 Dictionary<string, object> options = new Dictionary<string, object>(); 331 Dictionary<string, object> options = new Dictionary<string, object>();
332 OptionSet optionSet = new OptionSet().Add("m|merge", delegate (string v) { options["merge"] = v != null; }); 332 OptionSet optionSet = new OptionSet().Add("m|merge", delegate (string v) { options["merge"] = v != null; });
333 333
334 List<string> mainParams = optionSet.Parse(cmdparams); 334 List<string> mainParams = optionSet.Parse(cmdparams);
335 335
336 if (mainParams.Count < 6) 336 if (mainParams.Count < 6)
337 { 337 {
338 m_log.Error( 338 m_log.Error(
339 "[INVENTORY ARCHIVER]: usage is load iar [--merge] <first name> <last name> <inventory path> <user password> [<load file path>]"); 339 "[INVENTORY ARCHIVER]: usage is load iar [--merge] <first name> <last name> <inventory path> <user password> [<load file path>]");
340 return; 340 return;
341 } 341 }
342 342
343 string firstName = mainParams[2]; 343 string firstName = mainParams[2];
344 string lastName = mainParams[3]; 344 string lastName = mainParams[3];
@@ -353,7 +353,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
353 if (DearchiveInventory(firstName, lastName, invPath, pass, loadPath, options)) 353 if (DearchiveInventory(firstName, lastName, invPath, pass, loadPath, options))
354 m_log.InfoFormat( 354 m_log.InfoFormat(
355 "[INVENTORY ARCHIVER]: Loaded archive {0} for {1} {2}", 355 "[INVENTORY ARCHIVER]: Loaded archive {0} for {1} {2}",
356 loadPath, firstName, lastName); 356 loadPath, firstName, lastName);
357 } 357 }
358 catch (InventoryArchiverException e) 358 catch (InventoryArchiverException e)
359 { 359 {
@@ -390,7 +390,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
390 "[INVENTORY ARCHIVER]: Saving archive {0} using inventory path {1} for {2} {3}", 390 "[INVENTORY ARCHIVER]: Saving archive {0} using inventory path {1} for {2} {3}",
391 savePath, invPath, firstName, lastName); 391 savePath, invPath, firstName, lastName);
392 392
393 ArchiveInventory(id, firstName, lastName, invPath, pass, savePath, new Dictionary<string, object>()); 393 ArchiveInventory(id, firstName, lastName, invPath, pass, savePath, new Dictionary<string, object>());
394 } 394 }
395 catch (InventoryArchiverException e) 395 catch (InventoryArchiverException e)
396 { 396 {
@@ -398,7 +398,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
398 } 398 }
399 399
400 lock (m_pendingConsoleSaves) 400 lock (m_pendingConsoleSaves)
401 m_pendingConsoleSaves.Add(id); 401 m_pendingConsoleSaves.Add(id);
402 } 402 }
403 403
404 private void SaveInvConsoleCommandCompleted( 404 private void SaveInvConsoleCommandCompleted(
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs
index d66a1d0..938886b2 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/Tests/InventoryArchiverTests.cs
@@ -58,18 +58,18 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
58 /// <summary> 58 /// <summary>
59 /// Stream of data representing a common IAR that can be reused in load tests. 59 /// Stream of data representing a common IAR that can be reused in load tests.
60 /// </summary> 60 /// </summary>
61 protected MemoryStream m_iarStream; 61 protected MemoryStream m_iarStream;
62 62
63 protected UserAccount m_ua1 63 protected UserAccount m_ua1
64 = new UserAccount { 64 = new UserAccount {
65 PrincipalID = UUID.Parse("00000000-0000-0000-0000-000000000555"), 65 PrincipalID = UUID.Parse("00000000-0000-0000-0000-000000000555"),
66 FirstName = "Mr", 66 FirstName = "Mr",
67 LastName = "Tiddles" }; 67 LastName = "Tiddles" };
68 protected UserAccount m_ua2 68 protected UserAccount m_ua2
69 = new UserAccount { 69 = new UserAccount {
70 PrincipalID = UUID.Parse("00000000-0000-0000-0000-000000000666"), 70 PrincipalID = UUID.Parse("00000000-0000-0000-0000-000000000666"),
71 FirstName = "Lord", 71 FirstName = "Lord",
72 LastName = "Lucan" }; 72 LastName = "Lucan" };
73 string m_item1Name = "b.lsl"; 73 string m_item1Name = "b.lsl";
74 74
75 private void SaveCompleted( 75 private void SaveCompleted(
@@ -86,7 +86,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
86 } 86 }
87 87
88 protected void ConstructDefaultIarForTestLoad() 88 protected void ConstructDefaultIarForTestLoad()
89 { 89 {
90 string archiveItemName = InventoryArchiveWriteRequest.CreateArchiveItemName(m_item1Name, UUID.Random()); 90 string archiveItemName = InventoryArchiveWriteRequest.CreateArchiveItemName(m_item1Name, UUID.Random());
91 91
92 MemoryStream archiveWriteStream = new MemoryStream(); 92 MemoryStream archiveWriteStream = new MemoryStream();
@@ -104,7 +104,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
104 string item1FileName 104 string item1FileName
105 = string.Format("{0}{1}", ArchiveConstants.INVENTORY_PATH, archiveItemName); 105 = string.Format("{0}{1}", ArchiveConstants.INVENTORY_PATH, archiveItemName);
106 tar.WriteFile(item1FileName, UserInventoryItemSerializer.Serialize(item1)); 106 tar.WriteFile(item1FileName, UserInventoryItemSerializer.Serialize(item1));
107 tar.Close(); 107 tar.Close();
108 m_iarStream = new MemoryStream(archiveWriteStream.ToArray()); 108 m_iarStream = new MemoryStream(archiveWriteStream.ToArray());
109 } 109 }
110 110
@@ -341,7 +341,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
341// Assert.That(gotObject2File, Is.True, "No object2 file in archive"); 341// Assert.That(gotObject2File, Is.True, "No object2 file in archive");
342 342
343 // TODO: Test presence of more files and contents of files. 343 // TODO: Test presence of more files and contents of files.
344 } 344 }
345 345
346 /// <summary> 346 /// <summary>
347 /// Test that things work when the load path specified starts with a slash 347 /// Test that things work when the load path specified starts with a slash
@@ -349,22 +349,22 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
349 [Test] 349 [Test]
350 public void TestLoadIarPathStartsWithSlash() 350 public void TestLoadIarPathStartsWithSlash()
351 { 351 {
352 TestHelper.InMethod(); 352 TestHelper.InMethod();
353// log4net.Config.XmlConfigurator.Configure(); 353// log4net.Config.XmlConfigurator.Configure();
354 354
355 SerialiserModule serialiserModule = new SerialiserModule(); 355 SerialiserModule serialiserModule = new SerialiserModule();
356 InventoryArchiverModule archiverModule = new InventoryArchiverModule(true); 356 InventoryArchiverModule archiverModule = new InventoryArchiverModule(true);
357 Scene scene = SceneSetupHelpers.SetupScene("inventory"); 357 Scene scene = SceneSetupHelpers.SetupScene("inventory");
358 SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule); 358 SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule);
359 359
360 UserProfileTestUtils.CreateUserWithInventory(scene, m_ua1, "password"); 360 UserProfileTestUtils.CreateUserWithInventory(scene, m_ua1, "password");
361 archiverModule.DearchiveInventory(m_ua1.FirstName, m_ua1.LastName, "/Objects", "password", m_iarStream); 361 archiverModule.DearchiveInventory(m_ua1.FirstName, m_ua1.LastName, "/Objects", "password", m_iarStream);
362 362
363 InventoryItemBase foundItem1 363 InventoryItemBase foundItem1
364 = InventoryArchiveUtils.FindItemByPath( 364 = InventoryArchiveUtils.FindItemByPath(
365 scene.InventoryService, m_ua1.PrincipalID, "/Objects/" + m_item1Name); 365 scene.InventoryService, m_ua1.PrincipalID, "/Objects/" + m_item1Name);
366 366
367 Assert.That(foundItem1, Is.Not.Null, "Didn't find loaded item 1 in TestLoadIarFolderStartsWithSlash()"); 367 Assert.That(foundItem1, Is.Not.Null, "Didn't find loaded item 1 in TestLoadIarFolderStartsWithSlash()");
368 } 368 }
369 369
370 /// <summary> 370 /// <summary>
@@ -376,7 +376,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
376 [Test] 376 [Test]
377 public void TestLoadIarV0_1ExistingUsers() 377 public void TestLoadIarV0_1ExistingUsers()
378 { 378 {
379 TestHelper.InMethod(); 379 TestHelper.InMethod();
380 //log4net.Config.XmlConfigurator.Configure(); 380 //log4net.Config.XmlConfigurator.Configure();
381 381
382 SerialiserModule serialiserModule = new SerialiserModule(); 382 SerialiserModule serialiserModule = new SerialiserModule();
@@ -386,9 +386,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
386 Scene scene = SceneSetupHelpers.SetupScene("inventory"); 386 Scene scene = SceneSetupHelpers.SetupScene("inventory");
387 387
388 SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule); 388 SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule);
389 389
390 UserProfileTestUtils.CreateUserWithInventory(scene, m_ua1, "meowfood"); 390 UserProfileTestUtils.CreateUserWithInventory(scene, m_ua1, "meowfood");
391 UserProfileTestUtils.CreateUserWithInventory(scene, m_ua2, "hampshire"); 391 UserProfileTestUtils.CreateUserWithInventory(scene, m_ua2, "hampshire");
392 392
393 archiverModule.DearchiveInventory(m_ua1.FirstName, m_ua1.LastName, "/", "meowfood", m_iarStream); 393 archiverModule.DearchiveInventory(m_ua1.FirstName, m_ua1.LastName, "/", "meowfood", m_iarStream);
394 394
@@ -450,7 +450,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
450 string userFirstName = "Jock"; 450 string userFirstName = "Jock";
451 string userLastName = "Stirrup"; 451 string userLastName = "Stirrup";
452 UUID userId = UUID.Parse("00000000-0000-0000-0000-000000000020"); 452 UUID userId = UUID.Parse("00000000-0000-0000-0000-000000000020");
453 UserProfileTestUtils.CreateUserWithInventory(scene, userFirstName, userLastName, userId, "meowfood"); 453 UserProfileTestUtils.CreateUserWithInventory(scene, userFirstName, userLastName, userId, "meowfood");
454 454
455 // Create asset 455 // Create asset
456 SceneObjectGroup object1; 456 SceneObjectGroup object1;
@@ -524,7 +524,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
524 [Test] 524 [Test]
525 public void TestLoadIarV0_1AbsentUsers() 525 public void TestLoadIarV0_1AbsentUsers()
526 { 526 {
527 TestHelper.InMethod(); 527 TestHelper.InMethod();
528 //log4net.Config.XmlConfigurator.Configure(); 528 //log4net.Config.XmlConfigurator.Configure();
529 529
530 string userFirstName = "Charlie"; 530 string userFirstName = "Charlie";
@@ -562,7 +562,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
562 Scene scene = SceneSetupHelpers.SetupScene("inventory"); 562 Scene scene = SceneSetupHelpers.SetupScene("inventory");
563 563
564 SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule); 564 SceneSetupHelpers.SetupSceneModules(scene, serialiserModule, archiverModule);
565 UserProfileTestUtils.CreateUserWithInventory(scene, userFirstName, userLastName, userUuid, "meowfood"); 565 UserProfileTestUtils.CreateUserWithInventory(scene, userFirstName, userLastName, userUuid, "meowfood");
566 566
567 archiverModule.DearchiveInventory(userFirstName, userLastName, "/", "meowfood", archiveReadStream); 567 archiverModule.DearchiveInventory(userFirstName, userLastName, "/", "meowfood", archiveReadStream);
568 568
@@ -680,8 +680,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
680 string folder2aArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2aName, UUID.Random()); 680 string folder2aArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2aName, UUID.Random());
681 string folder2bArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2bName, UUID.Random()); 681 string folder2bArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2bName, UUID.Random());
682 682
683 string iarPath1 = string.Join("", new string[] { folder1ArchiveName, folder2aArchiveName }); 683 string iarPath1 = string.Join("", new string[] { folder1ArchiveName, folder2aArchiveName });
684 string iarPath2 = string.Join("", new string[] { folder1ArchiveName, folder2bArchiveName }); 684 string iarPath2 = string.Join("", new string[] { folder1ArchiveName, folder2bArchiveName });
685 685
686 { 686 {
687 // Test replication of path1 687 // Test replication of path1
@@ -694,7 +694,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
694 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, ua1.PrincipalID, folder1Name); 694 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, ua1.PrincipalID, folder1Name);
695 Assert.That(folder1Candidates.Count, Is.EqualTo(1)); 695 Assert.That(folder1Candidates.Count, Is.EqualTo(1));
696 696
697 InventoryFolderBase folder1 = folder1Candidates[0]; 697 InventoryFolderBase folder1 = folder1Candidates[0];
698 List<InventoryFolderBase> folder2aCandidates 698 List<InventoryFolderBase> folder2aCandidates
699 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1, folder2aName); 699 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1, folder2aName);
700 Assert.That(folder2aCandidates.Count, Is.EqualTo(1)); 700 Assert.That(folder2aCandidates.Count, Is.EqualTo(1));
@@ -715,11 +715,11 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
715 715
716 List<InventoryFolderBase> folder2aCandidates 716 List<InventoryFolderBase> folder2aCandidates
717 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1, folder2aName); 717 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1, folder2aName);
718 Assert.That(folder2aCandidates.Count, Is.EqualTo(1)); 718 Assert.That(folder2aCandidates.Count, Is.EqualTo(1));
719 719
720 List<InventoryFolderBase> folder2bCandidates 720 List<InventoryFolderBase> folder2bCandidates
721 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1, folder2bName); 721 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1, folder2bName);
722 Assert.That(folder2bCandidates.Count, Is.EqualTo(1)); 722 Assert.That(folder2bCandidates.Count, Is.EqualTo(1));
723 } 723 }
724 } 724 }
725 725
@@ -741,7 +741,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
741 741
742 InventoryFolderBase folder1 742 InventoryFolderBase folder1
743 = UserInventoryTestUtils.CreateInventoryFolder( 743 = UserInventoryTestUtils.CreateInventoryFolder(
744 scene.InventoryService, ua1.PrincipalID, folder1ExistingName); 744 scene.InventoryService, ua1.PrincipalID, folder1ExistingName);
745 745
746 string folder1ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder1ExistingName, UUID.Random()); 746 string folder1ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder1ExistingName, UUID.Random());
747 string folder2ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2Name, UUID.Random()); 747 string folder2ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2Name, UUID.Random());
@@ -772,7 +772,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
772 List<InventoryFolderBase> folder2PostCandidates 772 List<InventoryFolderBase> folder2PostCandidates
773 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1Post, "b"); 773 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1Post, "b");
774 Assert.That(folder2PostCandidates.Count, Is.EqualTo(1)); 774 Assert.That(folder2PostCandidates.Count, Is.EqualTo(1));
775 } 775 }
776 776
777 /// <summary> 777 /// <summary>
778 /// Test replication of a partly existing archive path to the user's inventory. This should create 778 /// Test replication of a partly existing archive path to the user's inventory. This should create
@@ -792,7 +792,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
792 792
793 InventoryFolderBase folder1 793 InventoryFolderBase folder1
794 = UserInventoryTestUtils.CreateInventoryFolder( 794 = UserInventoryTestUtils.CreateInventoryFolder(
795 scene.InventoryService, ua1.PrincipalID, folder1ExistingName); 795 scene.InventoryService, ua1.PrincipalID, folder1ExistingName);
796 796
797 string folder1ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder1ExistingName, UUID.Random()); 797 string folder1ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder1ExistingName, UUID.Random());
798 string folder2ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2Name, UUID.Random()); 798 string folder2ArchiveName = InventoryArchiveWriteRequest.CreateArchiveFolderName(folder2Name, UUID.Random());
@@ -812,6 +812,6 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.Tests
812 List<InventoryFolderBase> folder2PostCandidates 812 List<InventoryFolderBase> folder2PostCandidates
813 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1PostCandidates[0], "b"); 813 = InventoryArchiveUtils.FindFolderByPath(scene.InventoryService, folder1PostCandidates[0], "b");
814 Assert.That(folder2PostCandidates.Count, Is.EqualTo(1)); 814 Assert.That(folder2PostCandidates.Count, Is.EqualTo(1));
815 } 815 }
816 } 816 }
817} \ No newline at end of file 817} \ No newline at end of file
diff --git a/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueGetModule.cs b/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueGetModule.cs
index 35b70de..05fe3ee 100644
--- a/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueGetModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueGetModule.cs
@@ -138,7 +138,7 @@ namespace OpenSim.Region.CoreModules.Framework.EventQueue
138 { 138 {
139 if (!queues.ContainsKey(agentId)) 139 if (!queues.ContainsKey(agentId))
140 { 140 {
141 /* 141 /*
142 m_log.DebugFormat( 142 m_log.DebugFormat(
143 "[EVENTQUEUE]: Adding new queue for agent {0} in region {1}", 143 "[EVENTQUEUE]: Adding new queue for agent {0} in region {1}",
144 agentId, m_scene.RegionInfo.RegionName); 144 agentId, m_scene.RegionInfo.RegionName);
@@ -701,7 +701,7 @@ namespace OpenSim.Region.CoreModules.Framework.EventQueue
701 701
702 public void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID) 702 public void ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage, UUID avatarID)
703 { 703 {
704 OSD item = EventQueueHelper.ParcelProperties(parcelPropertiesMessage); 704 OSD item = EventQueueHelper.ParcelProperties(parcelPropertiesMessage);
705 Enqueue(item, avatarID); 705 Enqueue(item, avatarID);
706 } 706 }
707 707
diff --git a/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueHelper.cs b/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueHelper.cs
index b62df18..0d7d16a 100644
--- a/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueHelper.cs
+++ b/OpenSim/Region/CoreModules/Framework/EventQueue/EventQueueHelper.cs
@@ -55,7 +55,7 @@ namespace OpenSim.Region.CoreModules.Framework.EventQueue
55 } 55 }
56 56
57// private static byte[] uintToByteArray(uint uIntValue) 57// private static byte[] uintToByteArray(uint uIntValue)
58// { 58// {
59// byte[] result = new byte[4]; 59// byte[] result = new byte[4];
60// Utils.UIntToBytesBig(uIntValue, result, 0); 60// Utils.UIntToBytesBig(uIntValue, result, 0);
61// return result; 61// return result;
@@ -386,14 +386,14 @@ namespace OpenSim.Region.CoreModules.Framework.EventQueue
386 return placesReply; 386 return placesReply;
387 } 387 }
388 388
389 public static OSD ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage) 389 public static OSD ParcelProperties(ParcelPropertiesMessage parcelPropertiesMessage)
390 { 390 {
391 OSDMap message = new OSDMap(); 391 OSDMap message = new OSDMap();
392 message.Add("message", OSD.FromString("ParcelProperties")); 392 message.Add("message", OSD.FromString("ParcelProperties"));
393 OSD message_body = parcelPropertiesMessage.Serialize(); 393 OSD message_body = parcelPropertiesMessage.Serialize();
394 message.Add("body", message_body); 394 message.Add("body", message_body);
395 return message; 395 return message;
396 } 396 }
397 397
398 } 398 }
399} 399}
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
index d87f7f1..4c4eeff 100644
--- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
@@ -594,7 +594,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
594 rootPart.Name = item.Name; 594 rootPart.Name = item.Name;
595 rootPart.Description = item.Description; 595 rootPart.Description = item.Description;
596 596
597 List<SceneObjectPart> partList = null; 597 List<SceneObjectPart> partList = null;
598 lock (group.Children) 598 lock (group.Children)
599 partList = new List<SceneObjectPart>(group.Children.Values); 599 partList = new List<SceneObjectPart>(group.Children.Values);
600 600
diff --git a/OpenSim/Region/CoreModules/Framework/Statistics/Logging/BinaryLoggingModule.cs b/OpenSim/Region/CoreModules/Framework/Statistics/Logging/BinaryLoggingModule.cs
index b75a700..a75ff62 100644
--- a/OpenSim/Region/CoreModules/Framework/Statistics/Logging/BinaryLoggingModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/Statistics/Logging/BinaryLoggingModule.cs
@@ -49,8 +49,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
49 protected bool m_collectStats; 49 protected bool m_collectStats;
50 protected Scene m_scene = null; 50 protected Scene m_scene = null;
51 51
52 public string Name { get { return "Binary Statistics Logging Module"; } } 52 public string Name { get { return "Binary Statistics Logging Module"; } }
53 public Type ReplaceableInterface { get { return null; } } 53 public Type ReplaceableInterface { get { return null; } }
54 54
55 public void Initialise(IConfigSource source) 55 public void Initialise(IConfigSource source)
56 { 56 {
@@ -79,7 +79,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
79 catch 79 catch
80 { 80 {
81 // if it doesn't work, we don't collect anything 81 // if it doesn't work, we don't collect anything
82 } 82 }
83 } 83 }
84 84
85 public void AddRegion(Scene scene) 85 public void AddRegion(Scene scene)
@@ -94,12 +94,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
94 public void RegionLoaded(Scene scene) 94 public void RegionLoaded(Scene scene)
95 { 95 {
96 if (m_collectStats) 96 if (m_collectStats)
97 m_scene.StatsReporter.OnSendStatsResult += LogSimStats; 97 m_scene.StatsReporter.OnSendStatsResult += LogSimStats;
98 } 98 }
99 99
100 public void Close() 100 public void Close()
101 { 101 {
102 } 102 }
103 103
104 public class StatLogger 104 public class StatLogger
105 { 105 {
@@ -164,6 +164,6 @@ namespace OpenSim.Region.CoreModules.Avatar.Attachments
164 } 164 }
165 } 165 }
166 return; 166 return;
167 } 167 }
168 } 168 }
169} 169}
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs
index 4e2f602..2322d7c 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/InventoryCache.cs
@@ -185,7 +185,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
185 return folders[type]; 185 return folders[type];
186 } 186 }
187 187
188 m_log.WarnFormat("[INVENTORY CACHE]: Could not find folder for system type {0} for {1}", type, userID); 188 m_log.WarnFormat("[INVENTORY CACHE]: Could not find folder for system type {0} for {1}", type, userID);
189 189
190 return null; 190 return null;
191 } 191 }
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
index cbd9e05..ab6be50 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/LocalInventoryServiceConnector.cs
@@ -220,7 +220,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
220 { 220 {
221// m_log.DebugFormat( 221// m_log.DebugFormat(
222// "[LOCAL INVENTORY SERVICES CONNECTOR]: Adding inventory item {0} to user {1} folder {2}", 222// "[LOCAL INVENTORY SERVICES CONNECTOR]: Adding inventory item {0} to user {1} folder {2}",
223// item.Name, item.Owner, item.Folder); 223// item.Name, item.Owner, item.Folder);
224 224
225 return m_InventoryService.AddItem(item); 225 return m_InventoryService.AddItem(item);
226 } 226 }
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
index 4ab6947..34205e3 100644
--- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
+++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Inventory/RemoteXInventoryServiceConnector.cs
@@ -227,7 +227,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
227 public bool AddItem(InventoryItemBase item) 227 public bool AddItem(InventoryItemBase item)
228 { 228 {
229 if (item == null) 229 if (item == null)
230 return false; 230 return false;
231 231
232 return m_RemoteConnector.AddItem(item); 232 return m_RemoteConnector.AddItem(item);
233 } 233 }
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveHelpers.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveHelpers.cs
index ddc3dd7..c72acc3 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveHelpers.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveHelpers.cs
@@ -33,7 +33,7 @@ using OpenSim.Framework.Serialization;
33using OpenSim.Region.Framework.Scenes; 33using OpenSim.Region.Framework.Scenes;
34 34
35namespace OpenSim.Region.CoreModules.World.Archiver 35namespace OpenSim.Region.CoreModules.World.Archiver
36{ 36{
37 /// <summary> 37 /// <summary>
38 /// Helper methods for archive manipulation 38 /// Helper methods for archive manipulation
39 /// </summary> 39 /// </summary>
@@ -50,7 +50,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
50 public static string CreateObjectFilename(SceneObjectGroup sog) 50 public static string CreateObjectFilename(SceneObjectGroup sog)
51 { 51 {
52 return ArchiveConstants.CreateOarObjectFilename(sog.Name, sog.UUID, sog.AbsolutePosition); 52 return ArchiveConstants.CreateOarObjectFilename(sog.Name, sog.UUID, sog.AbsolutePosition);
53 } 53 }
54 54
55 /// <summary> 55 /// <summary>
56 /// Create the path used to store an object in an OpenSim Archive. 56 /// Create the path used to store an object in an OpenSim Archive.
@@ -62,7 +62,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
62 public static string CreateObjectPath(SceneObjectGroup sog) 62 public static string CreateObjectPath(SceneObjectGroup sog)
63 { 63 {
64 return ArchiveConstants.CreateOarObjectPath(sog.Name, sog.UUID, sog.AbsolutePosition); 64 return ArchiveConstants.CreateOarObjectPath(sog.Name, sog.UUID, sog.AbsolutePosition);
65 } 65 }
66 66
67 /// <summary> 67 /// <summary>
68 /// Resolve path to a working FileStream 68 /// Resolve path to a working FileStream
@@ -123,6 +123,6 @@ namespace OpenSim.Region.CoreModules.World.Archiver
123 123
124 // return new BufferedStream(file, (int) response.ContentLength); 124 // return new BufferedStream(file, (int) response.ContentLength);
125 return new BufferedStream(file, 1000000); 125 return new BufferedStream(file, 1000000);
126 } 126 }
127 } 127 }
128} \ No newline at end of file 128} \ No newline at end of file
diff --git a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
index ea71fd9..634685a 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
@@ -72,12 +72,12 @@ namespace OpenSim.Region.CoreModules.World.Land
72 #pragma warning restore 0429 72 #pragma warning restore 0429
73 73
74 /// <value> 74 /// <value>
75 /// Local land ids at specified region co-ordinates (region size / 4) 75 /// Local land ids at specified region co-ordinates (region size / 4)
76 /// </value> 76 /// </value>
77 private readonly int[,] m_landIDList = new int[landArrayMax, landArrayMax]; 77 private readonly int[,] m_landIDList = new int[landArrayMax, landArrayMax];
78 78
79 /// <value> 79 /// <value>
80 /// Land objects keyed by local id 80 /// Land objects keyed by local id
81 /// </value> 81 /// </value>
82 private readonly Dictionary<int, ILandObject> m_landList = new Dictionary<int, ILandObject>(); 82 private readonly Dictionary<int, ILandObject> m_landList = new Dictionary<int, ILandObject>();
83 83
@@ -92,8 +92,8 @@ namespace OpenSim.Region.CoreModules.World.Land
92 92
93 #region INonSharedRegionModule Members 93 #region INonSharedRegionModule Members
94 94
95 public Type ReplaceableInterface 95 public Type ReplaceableInterface
96 { 96 {
97 get { return null; } 97 get { return null; }
98 } 98 }
99 99
@@ -192,7 +192,7 @@ namespace OpenSim.Region.CoreModules.World.Land
192 Debug.WriteLine(string.Format("Stopping force position because {0} is close enough to position {1}", forcedPosition.Value, clientAvatar.AbsolutePosition)); 192 Debug.WriteLine(string.Format("Stopping force position because {0} is close enough to position {1}", forcedPosition.Value, clientAvatar.AbsolutePosition));
193 forcedPosition = null; 193 forcedPosition = null;
194 } 194 }
195 //if we are far away, teleport 195 //if we are far away, teleport
196 else if (Vector3.Distance(clientAvatar.AbsolutePosition, forcedPosition.Value) > 3) 196 else if (Vector3.Distance(clientAvatar.AbsolutePosition, forcedPosition.Value) > 3)
197 { 197 {
198 Debug.WriteLine(string.Format("Teleporting out because {0} is too far from avatar position {1}", forcedPosition.Value, clientAvatar.AbsolutePosition)); 198 Debug.WriteLine(string.Format("Teleporting out because {0} is too far from avatar position {1}", forcedPosition.Value, clientAvatar.AbsolutePosition));
@@ -321,8 +321,6 @@ namespace OpenSim.Region.CoreModules.World.Land
321 } 321 }
322 } 322 }
323 323
324
325
326 private void ForceAvatarToPosition(ScenePresence avatar, Vector3? position) 324 private void ForceAvatarToPosition(ScenePresence avatar, Vector3? position)
327 { 325 {
328 if (m_scene.Permissions.IsGod(avatar.UUID)) return; 326 if (m_scene.Permissions.IsGod(avatar.UUID)) return;
@@ -336,7 +334,6 @@ namespace OpenSim.Region.CoreModules.World.Land
336 { 334 {
337 avatar.ControllingClient.SendAlertMessage( 335 avatar.ControllingClient.SendAlertMessage(
338 "You are not allowed on this parcel because the land owner has restricted access."); 336 "You are not allowed on this parcel because the land owner has restricted access.");
339
340 } 337 }
341 338
342 public void EventManagerOnAvatarEnteringNewParcel(ScenePresence avatar, int localLandID, UUID regionID) 339 public void EventManagerOnAvatarEnteringNewParcel(ScenePresence avatar, int localLandID, UUID regionID)
@@ -448,7 +445,7 @@ namespace OpenSim.Region.CoreModules.World.Land
448 if (clientAvatar.AbsolutePosition.Z < LandChannel.BAN_LINE_SAFETY_HIEGHT && 445 if (clientAvatar.AbsolutePosition.Z < LandChannel.BAN_LINE_SAFETY_HIEGHT &&
449 clientAvatar.sentMessageAboutRestrictedParcelFlyingDown) 446 clientAvatar.sentMessageAboutRestrictedParcelFlyingDown)
450 { 447 {
451 EventManagerOnAvatarEnteringNewParcel(clientAvatar, parcel.LandData.LocalID, 448 EventManagerOnAvatarEnteringNewParcel(clientAvatar, parcel.LandData.LocalID,
452 m_scene.RegionInfo.RegionID); 449 m_scene.RegionInfo.RegionID);
453 //They are going under the safety line! 450 //They are going under the safety line!
454 if (!parcel.IsBannedFromLand(clientAvatar.UUID)) 451 if (!parcel.IsBannedFromLand(clientAvatar.UUID))
@@ -652,7 +649,7 @@ namespace OpenSim.Region.CoreModules.World.Land
652 649
653 if (x_float > Constants.RegionSize || x_float <= 0 || y_float > Constants.RegionSize || y_float <= 0) 650 if (x_float > Constants.RegionSize || x_float <= 0 || y_float > Constants.RegionSize || y_float <= 0)
654 return null; 651 return null;
655 652
656 try 653 try
657 { 654 {
658 x = Convert.ToInt32(Math.Floor(Convert.ToDouble(x_float) / 4.0)); 655 x = Convert.ToInt32(Math.Floor(Convert.ToDouble(x_float) / 4.0));
@@ -667,7 +664,7 @@ namespace OpenSim.Region.CoreModules.World.Land
667 { 664 {
668 return null; 665 return null;
669 } 666 }
670 667
671 lock (m_landList) 668 lock (m_landList)
672 { 669 {
673 // Corner case. If an autoreturn happens during sim startup 670 // Corner case. If an autoreturn happens during sim startup
@@ -687,7 +684,7 @@ namespace OpenSim.Region.CoreModules.World.Land
687 // they happen every time at border crossings 684 // they happen every time at border crossings
688 throw new Exception("Error: Parcel not found at point " + x + ", " + y); 685 throw new Exception("Error: Parcel not found at point " + x + ", " + y);
689 } 686 }
690 687
691 lock (m_landIDList) 688 lock (m_landIDList)
692 { 689 {
693 try 690 try
@@ -741,7 +738,6 @@ namespace OpenSim.Region.CoreModules.World.Land
741 738
742 public void EventManagerOnObjectBeingRemovedFromScene(SceneObjectGroup obj) 739 public void EventManagerOnObjectBeingRemovedFromScene(SceneObjectGroup obj)
743 { 740 {
744
745 lock (m_landList) 741 lock (m_landList)
746 { 742 {
747 foreach (LandObject p in m_landList.Values) 743 foreach (LandObject p in m_landList.Values)
@@ -936,7 +932,7 @@ namespace OpenSim.Region.CoreModules.World.Land
936 return; 932 return;
937 } 933 }
938 } 934 }
939 935
940 lock (m_landList) 936 lock (m_landList)
941 { 937 {
942 foreach (ILandObject slaveLandObject in selectedLandObjects) 938 foreach (ILandObject slaveLandObject in selectedLandObjects)
@@ -1078,7 +1074,6 @@ namespace OpenSim.Region.CoreModules.World.Land
1078 temp.Add(currentParcel); 1074 temp.Add(currentParcel);
1079 } 1075 }
1080 } 1076 }
1081
1082 } 1077 }
1083 } 1078 }
1084 1079
@@ -1121,7 +1116,7 @@ namespace OpenSim.Region.CoreModules.World.Land
1121 join(west, south, east, north, remote_client.AgentId); 1116 join(west, south, east, north, remote_client.AgentId);
1122 } 1117 }
1123 1118
1124 public void ClientOnParcelSelectObjects(int local_id, int request_type, 1119 public void ClientOnParcelSelectObjects(int local_id, int request_type,
1125 List<UUID> returnIDs, IClientAPI remote_client) 1120 List<UUID> returnIDs, IClientAPI remote_client)
1126 { 1121 {
1127 m_landList[local_id].SendForceObjectSelect(local_id, request_type, returnIDs, remote_client); 1122 m_landList[local_id].SendForceObjectSelect(local_id, request_type, returnIDs, remote_client);
@@ -1358,31 +1353,31 @@ namespace OpenSim.Region.CoreModules.World.Land
1358 { 1353 {
1359 return RemoteParcelRequest(request, path, param, agentID, caps); 1354 return RemoteParcelRequest(request, path, param, agentID, caps);
1360 })); 1355 }));
1361 UUID parcelCapID = UUID.Random(); 1356 UUID parcelCapID = UUID.Random();
1362 caps.RegisterHandler("ParcelPropertiesUpdate", 1357 caps.RegisterHandler("ParcelPropertiesUpdate",
1363 new RestStreamHandler("POST", "/CAPS/" + parcelCapID, 1358 new RestStreamHandler("POST", "/CAPS/" + parcelCapID,
1364 delegate(string request, string path, string param, 1359 delegate(string request, string path, string param,
1365 OSHttpRequest httpRequest, OSHttpResponse httpResponse) 1360 OSHttpRequest httpRequest, OSHttpResponse httpResponse)
1366 { 1361 {
1367 return ProcessPropertiesUpdate(request, path, param, agentID, caps); 1362 return ProcessPropertiesUpdate(request, path, param, agentID, caps);
1368 })); 1363 }));
1369 } 1364 }
1370 private string ProcessPropertiesUpdate(string request, string path, string param, UUID agentID, Caps caps) 1365 private string ProcessPropertiesUpdate(string request, string path, string param, UUID agentID, Caps caps)
1371 { 1366 {
1372 IClientAPI client; 1367 IClientAPI client;
1373 if ( ! m_scene.TryGetClient(agentID, out client) ) { 1368 if (! m_scene.TryGetClient(agentID, out client)) {
1374 m_log.WarnFormat("[LAND] unable to retrieve IClientAPI for {0}", agentID.ToString() ); 1369 m_log.WarnFormat("[LAND] unable to retrieve IClientAPI for {0}", agentID.ToString());
1375 return LLSDHelpers.SerialiseLLSDReply(new LLSDEmpty()); 1370 return LLSDHelpers.SerialiseLLSDReply(new LLSDEmpty());
1376 } 1371 }
1377 1372
1378 ParcelPropertiesUpdateMessage properties = new ParcelPropertiesUpdateMessage(); 1373 ParcelPropertiesUpdateMessage properties = new ParcelPropertiesUpdateMessage();
1379 OpenMetaverse.StructuredData.OSDMap args = (OpenMetaverse.StructuredData.OSDMap) OSDParser.DeserializeLLSDXml(request); 1374 OpenMetaverse.StructuredData.OSDMap args = (OpenMetaverse.StructuredData.OSDMap) OSDParser.DeserializeLLSDXml(request);
1380 1375
1381 properties.Deserialize(args); 1376 properties.Deserialize(args);
1382 1377
1383 LandUpdateArgs land_update = new LandUpdateArgs(); 1378 LandUpdateArgs land_update = new LandUpdateArgs();
1384 int parcelID = properties.LocalID; 1379 int parcelID = properties.LocalID;
1385 land_update.AuthBuyerID = properties.AuthBuyerID; 1380 land_update.AuthBuyerID = properties.AuthBuyerID;
1386 land_update.Category = properties.Category; 1381 land_update.Category = properties.Category;
1387 land_update.Desc = properties.Desc; 1382 land_update.Desc = properties.Desc;
1388 land_update.GroupID = properties.GroupID; 1383 land_update.GroupID = properties.GroupID;
@@ -1399,15 +1394,15 @@ namespace OpenSim.Region.CoreModules.World.Land
1399 land_update.SnapshotID = properties.SnapshotID; 1394 land_update.SnapshotID = properties.SnapshotID;
1400 land_update.UserLocation = properties.UserLocation; 1395 land_update.UserLocation = properties.UserLocation;
1401 land_update.UserLookAt = properties.UserLookAt; 1396 land_update.UserLookAt = properties.UserLookAt;
1402 land_update.MediaDescription = properties.MediaDesc; 1397 land_update.MediaDescription = properties.MediaDesc;
1403 land_update.MediaType = properties.MediaType; 1398 land_update.MediaType = properties.MediaType;
1404 land_update.MediaWidth = properties.MediaWidth; 1399 land_update.MediaWidth = properties.MediaWidth;
1405 land_update.MediaHeight = properties.MediaHeight; 1400 land_update.MediaHeight = properties.MediaHeight;
1406 land_update.MediaLoop = properties.MediaLoop; 1401 land_update.MediaLoop = properties.MediaLoop;
1407 land_update.ObscureMusic = properties.ObscureMusic; 1402 land_update.ObscureMusic = properties.ObscureMusic;
1408 land_update.ObscureMedia = properties.ObscureMedia; 1403 land_update.ObscureMedia = properties.ObscureMedia;
1409 1404
1410 ILandObject land; 1405 ILandObject land;
1411 lock (m_landList) 1406 lock (m_landList)
1412 { 1407 {
1413 m_landList.TryGetValue(parcelID, out land); 1408 m_landList.TryGetValue(parcelID, out land);
@@ -1415,15 +1410,15 @@ namespace OpenSim.Region.CoreModules.World.Land
1415 1410
1416 if (land != null) 1411 if (land != null)
1417 { 1412 {
1418 land.UpdateLandProperties(land_update, client); 1413 land.UpdateLandProperties(land_update, client);
1419 m_scene.EventManager.TriggerOnParcelPropertiesUpdateRequest(land_update, parcelID, client); 1414 m_scene.EventManager.TriggerOnParcelPropertiesUpdateRequest(land_update, parcelID, client);
1420 } 1415 }
1421 else 1416 else
1422 { 1417 {
1423 m_log.WarnFormat("[LAND] unable to find parcelID {0}", parcelID); 1418 m_log.WarnFormat("[LAND] unable to find parcelID {0}", parcelID);
1424 } 1419 }
1425 return LLSDHelpers.SerialiseLLSDReply(new LLSDEmpty()); 1420 return LLSDHelpers.SerialiseLLSDReply(new LLSDEmpty());
1426 } 1421 }
1427 // we cheat here: As we don't have (and want) a grid-global parcel-store, we can't return the 1422 // we cheat here: As we don't have (and want) a grid-global parcel-store, we can't return the
1428 // "real" parcelID, because we wouldn't be able to map that to the region the parcel belongs to. 1423 // "real" parcelID, because we wouldn't be able to map that to the region the parcel belongs to.
1429 // So, we create a "fake" parcelID by using the regionHandle (64 bit), and the local (integer) x 1424 // So, we create a "fake" parcelID by using the regionHandle (64 bit), and the local (integer) x
@@ -1500,19 +1495,19 @@ namespace OpenSim.Region.CoreModules.World.Land
1500 if (parcelID == UUID.Zero) 1495 if (parcelID == UUID.Zero)
1501 return; 1496 return;
1502 1497
1503 ExtendedLandData data = 1498 ExtendedLandData data =
1504 (ExtendedLandData)parcelInfoCache.Get(parcelID.ToString(), 1499 (ExtendedLandData)parcelInfoCache.Get(parcelID.ToString(),
1505 delegate(string id) 1500 delegate(string id)
1506 { 1501 {
1507 UUID parcel = UUID.Zero; 1502 UUID parcel = UUID.Zero;
1508 UUID.TryParse(id, out parcel); 1503 UUID.TryParse(id, out parcel);
1509 // assume we've got the parcelID we just computed in RemoteParcelRequest 1504 // assume we've got the parcelID we just computed in RemoteParcelRequest
1510 ExtendedLandData extLandData = new ExtendedLandData(); 1505 ExtendedLandData extLandData = new ExtendedLandData();
1511 Util.ParseFakeParcelID(parcel, out extLandData.RegionHandle, 1506 Util.ParseFakeParcelID(parcel, out extLandData.RegionHandle,
1512 out extLandData.X, out extLandData.Y); 1507 out extLandData.X, out extLandData.Y);
1513 m_log.DebugFormat("[LAND] got parcelinfo request for regionHandle {0}, x/y {1}/{2}", 1508 m_log.DebugFormat("[LAND] got parcelinfo request for regionHandle {0}, x/y {1}/{2}",
1514 extLandData.RegionHandle, extLandData.X, extLandData.Y); 1509 extLandData.RegionHandle, extLandData.X, extLandData.Y);
1515 1510
1516 // for this region or for somewhere else? 1511 // for this region or for somewhere else?
1517 if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle) 1512 if (extLandData.RegionHandle == m_scene.RegionInfo.RegionHandle)
1518 { 1513 {
diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
index 499b60c..d87352f 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs
@@ -229,13 +229,13 @@ namespace OpenSim.Region.CoreModules.World.Land
229 newData.SnapshotID = args.SnapshotID; 229 newData.SnapshotID = args.SnapshotID;
230 newData.UserLocation = args.UserLocation; 230 newData.UserLocation = args.UserLocation;
231 newData.UserLookAt = args.UserLookAt; 231 newData.UserLookAt = args.UserLookAt;
232 newData.MediaType = args.MediaType; 232 newData.MediaType = args.MediaType;
233 newData.MediaDescription = args.MediaDescription; 233 newData.MediaDescription = args.MediaDescription;
234 newData.MediaWidth = args.MediaWidth; 234 newData.MediaWidth = args.MediaWidth;
235 newData.MediaHeight = args.MediaHeight; 235 newData.MediaHeight = args.MediaHeight;
236 newData.MediaLoop = args.MediaLoop; 236 newData.MediaLoop = args.MediaLoop;
237 newData.ObscureMusic = args.ObscureMusic; 237 newData.ObscureMusic = args.ObscureMusic;
238 newData.ObscureMedia = args.ObscureMedia; 238 newData.ObscureMedia = args.ObscureMedia;
239 239
240 m_scene.LandChannel.UpdateLandObject(LandData.LocalID, newData); 240 m_scene.LandChannel.UpdateLandObject(LandData.LocalID, newData);
241 241
diff --git a/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs b/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs
index 82ad109..7c5d044 100644
--- a/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs
+++ b/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs
@@ -54,11 +54,11 @@ namespace OpenSim.Region.CoreModules.Media.Moap
54{ 54{
55 [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MoapModule")] 55 [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MoapModule")]
56 public class MoapModule : INonSharedRegionModule, IMoapModule 56 public class MoapModule : INonSharedRegionModule, IMoapModule
57 { 57 {
58 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 58 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
59 59
60 public string Name { get { return "MoapModule"; } } 60 public string Name { get { return "MoapModule"; } }
61 public Type ReplaceableInterface { get { return null; } } 61 public Type ReplaceableInterface { get { return null; } }
62 62
63 /// <summary> 63 /// <summary>
64 /// Is this module enabled? 64 /// Is this module enabled?
@@ -78,17 +78,17 @@ namespace OpenSim.Region.CoreModules.Media.Moap
78 /// <summary> 78 /// <summary>
79 /// Track the ObjectMedia capabilities given to users keyed by agent. Lock m_omCapUsers to manipulate. 79 /// Track the ObjectMedia capabilities given to users keyed by agent. Lock m_omCapUsers to manipulate.
80 /// </summary> 80 /// </summary>
81 protected Dictionary<UUID, string> m_omCapUrls = new Dictionary<UUID, string>(); 81 protected Dictionary<UUID, string> m_omCapUrls = new Dictionary<UUID, string>();
82 82
83 /// <summary> 83 /// <summary>
84 /// Track the ObjectMediaUpdate capabilities given to users keyed by path 84 /// Track the ObjectMediaUpdate capabilities given to users keyed by path
85 /// </summary> 85 /// </summary>
86 protected Dictionary<string, UUID> m_omuCapUsers = new Dictionary<string, UUID>(); 86 protected Dictionary<string, UUID> m_omuCapUsers = new Dictionary<string, UUID>();
87 87
88 /// <summary> 88 /// <summary>
89 /// Track the ObjectMediaUpdate capabilities given to users keyed by agent. Lock m_omuCapUsers to manipulate 89 /// Track the ObjectMediaUpdate capabilities given to users keyed by agent. Lock m_omuCapUsers to manipulate
90 /// </summary> 90 /// </summary>
91 protected Dictionary<UUID, string> m_omuCapUrls = new Dictionary<UUID, string>(); 91 protected Dictionary<UUID, string> m_omuCapUrls = new Dictionary<UUID, string>();
92 92
93 public void Initialise(IConfigSource configSource) 93 public void Initialise(IConfigSource configSource)
94 { 94 {
@@ -129,7 +129,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
129 m_scene.EventManager.OnRegisterCaps -= OnRegisterCaps; 129 m_scene.EventManager.OnRegisterCaps -= OnRegisterCaps;
130 m_scene.EventManager.OnDeregisterCaps -= OnDeregisterCaps; 130 m_scene.EventManager.OnDeregisterCaps -= OnDeregisterCaps;
131 m_scene.EventManager.OnSceneObjectPartCopy -= OnSceneObjectPartCopy; 131 m_scene.EventManager.OnSceneObjectPartCopy -= OnSceneObjectPartCopy;
132 } 132 }
133 133
134 public void OnRegisterCaps(UUID agentID, Caps caps) 134 public void OnRegisterCaps(UUID agentID, Caps caps)
135 { 135 {
@@ -159,7 +159,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
159 caps.RegisterHandler( 159 caps.RegisterHandler(
160 "ObjectMediaNavigate", new RestStreamHandler("POST", omuCapUrl, HandleObjectMediaNavigateMessage)); 160 "ObjectMediaNavigate", new RestStreamHandler("POST", omuCapUrl, HandleObjectMediaNavigateMessage));
161 } 161 }
162 } 162 }
163 163
164 public void OnDeregisterCaps(UUID agentID, Caps caps) 164 public void OnDeregisterCaps(UUID agentID, Caps caps)
165 { 165 {
@@ -179,7 +179,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
179 } 179 }
180 180
181 protected void OnSceneObjectPartCopy(SceneObjectPart copy, SceneObjectPart original, bool userExposed) 181 protected void OnSceneObjectPartCopy(SceneObjectPart copy, SceneObjectPart original, bool userExposed)
182 { 182 {
183 if (original.Shape.Media != null) 183 if (original.Shape.Media != null)
184 { 184 {
185 PrimitiveBaseShape.MediaList dupeMedia = new PrimitiveBaseShape.MediaList(); 185 PrimitiveBaseShape.MediaList dupeMedia = new PrimitiveBaseShape.MediaList();
@@ -195,7 +195,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
195 } 195 }
196 196
197 copy.Shape.Media = dupeMedia; 197 copy.Shape.Media = dupeMedia;
198 } 198 }
199 } 199 }
200 200
201 public MediaEntry GetMediaEntry(SceneObjectPart part, int face) 201 public MediaEntry GetMediaEntry(SceneObjectPart part, int face)
@@ -211,9 +211,9 @@ namespace OpenSim.Region.CoreModules.Media.Moap
211 me = null; 211 me = null;
212 } 212 }
213 else 213 else
214 { 214 {
215 lock (media) 215 lock (media)
216 me = media[face]; 216 me = media[face];
217 217
218 // TODO: Really need a proper copy constructor down in libopenmetaverse 218 // TODO: Really need a proper copy constructor down in libopenmetaverse
219 if (me != null) 219 if (me != null)
@@ -227,17 +227,17 @@ namespace OpenSim.Region.CoreModules.Media.Moap
227 227
228 public void SetMediaEntry(SceneObjectPart part, int face, MediaEntry me) 228 public void SetMediaEntry(SceneObjectPart part, int face, MediaEntry me)
229 { 229 {
230 CheckFaceParam(part, face); 230 CheckFaceParam(part, face);
231 231
232 if (null == part.Shape.Media) 232 if (null == part.Shape.Media)
233 part.Shape.Media = new PrimitiveBaseShape.MediaList(new MediaEntry[part.GetNumberOfSides()]); 233 part.Shape.Media = new PrimitiveBaseShape.MediaList(new MediaEntry[part.GetNumberOfSides()]);
234 234
235 lock (part.Shape.Media) 235 lock (part.Shape.Media)
236 part.Shape.Media[face] = me; 236 part.Shape.Media[face] = me;
237 237
238 UpdateMediaUrl(part, UUID.Zero); 238 UpdateMediaUrl(part, UUID.Zero);
239 part.ScheduleFullUpdate(); 239 part.ScheduleFullUpdate();
240 part.TriggerScriptChangedEvent(Changed.MEDIA); 240 part.TriggerScriptChangedEvent(Changed.MEDIA);
241 } 241 }
242 242
243 public void ClearMediaEntry(SceneObjectPart part, int face) 243 public void ClearMediaEntry(SceneObjectPart part, int face)
@@ -256,7 +256,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
256 /// <returns></returns> 256 /// <returns></returns>
257 protected string HandleObjectMediaMessage( 257 protected string HandleObjectMediaMessage(
258 string request, string path, string param, OSHttpRequest httpRequest, OSHttpResponse httpResponse) 258 string request, string path, string param, OSHttpRequest httpRequest, OSHttpResponse httpResponse)
259 { 259 {
260// m_log.DebugFormat("[MOAP]: Got ObjectMedia path [{0}], raw request [{1}]", path, request); 260// m_log.DebugFormat("[MOAP]: Got ObjectMedia path [{0}], raw request [{1}]", path, request);
261 261
262 OSDMap osd = (OSDMap)OSDParser.DeserializeLLSDXml(request); 262 OSDMap osd = (OSDMap)OSDParser.DeserializeLLSDXml(request);
@@ -266,12 +266,12 @@ namespace OpenSim.Region.CoreModules.Media.Moap
266 if (omm.Request is ObjectMediaRequest) 266 if (omm.Request is ObjectMediaRequest)
267 return HandleObjectMediaRequest(omm.Request as ObjectMediaRequest); 267 return HandleObjectMediaRequest(omm.Request as ObjectMediaRequest);
268 else if (omm.Request is ObjectMediaUpdate) 268 else if (omm.Request is ObjectMediaUpdate)
269 return HandleObjectMediaUpdate(path, omm.Request as ObjectMediaUpdate); 269 return HandleObjectMediaUpdate(path, omm.Request as ObjectMediaUpdate);
270 270
271 throw new Exception( 271 throw new Exception(
272 string.Format( 272 string.Format(
273 "[MOAP]: ObjectMediaMessage has unrecognized ObjectMediaBlock of {0}", 273 "[MOAP]: ObjectMediaMessage has unrecognized ObjectMediaBlock of {0}",
274 omm.Request.GetType())); 274 omm.Request.GetType()));
275 } 275 }
276 276
277 /// <summary> 277 /// <summary>
@@ -279,7 +279,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
279 /// </summary> 279 /// </summary>
280 /// <param name="omr"></param> 280 /// <param name="omr"></param>
281 /// <returns></returns> 281 /// <returns></returns>
282 protected string HandleObjectMediaRequest(ObjectMediaRequest omr) 282 protected string HandleObjectMediaRequest(ObjectMediaRequest omr)
283 { 283 {
284 UUID primId = omr.PrimID; 284 UUID primId = omr.PrimID;
285 285
@@ -318,7 +318,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
318 /// <param name="path">Path on which this request was made</param> 318 /// <param name="path">Path on which this request was made</param>
319 /// <param name="omu">/param> 319 /// <param name="omu">/param>
320 /// <returns></returns> 320 /// <returns></returns>
321 protected string HandleObjectMediaUpdate(string path, ObjectMediaUpdate omu) 321 protected string HandleObjectMediaUpdate(string path, ObjectMediaUpdate omu)
322 { 322 {
323 UUID primId = omu.PrimID; 323 UUID primId = omu.PrimID;
324 324
@@ -330,9 +330,9 @@ namespace OpenSim.Region.CoreModules.Media.Moap
330 "[MOAP]: Received an UPDATE ObjectMediaRequest for prim {0} but this doesn't exist in region {1}", 330 "[MOAP]: Received an UPDATE ObjectMediaRequest for prim {0} but this doesn't exist in region {1}",
331 primId, m_scene.RegionInfo.RegionName); 331 primId, m_scene.RegionInfo.RegionName);
332 return string.Empty; 332 return string.Empty;
333 } 333 }
334 334
335// m_log.DebugFormat("[MOAP]: Received {0} media entries for prim {1}", omu.FaceMedia.Length, primId); 335// m_log.DebugFormat("[MOAP]: Received {0} media entries for prim {1}", omu.FaceMedia.Length, primId);
336 336
337// for (int i = 0; i < omu.FaceMedia.Length; i++) 337// for (int i = 0; i < omu.FaceMedia.Length; i++)
338// { 338// {
@@ -374,14 +374,14 @@ namespace OpenSim.Region.CoreModules.Media.Moap
374 part.Shape.Textures = te; 374 part.Shape.Textures = te;
375// m_log.DebugFormat( 375// m_log.DebugFormat(
376// "[MOAP]: Media flags for face {0} is {1}", 376// "[MOAP]: Media flags for face {0} is {1}",
377// i, part.Shape.Textures.FaceTextures[i].MediaFlags); 377// i, part.Shape.Textures.FaceTextures[i].MediaFlags);
378 } 378 }
379 } 379 }
380 } 380 }
381 else 381 else
382 { 382 {
383 // We need to go through the media textures one at a time to make sure that we have permission 383 // We need to go through the media textures one at a time to make sure that we have permission
384 // to change them 384 // to change them
385 385
386 // FIXME: Race condition here since some other texture entry manipulator may overwrite/get 386 // FIXME: Race condition here since some other texture entry manipulator may overwrite/get
387 // overwritten. Unfortunately, PrimitiveBaseShape does not allow us to change texture entry 387 // overwritten. Unfortunately, PrimitiveBaseShape does not allow us to change texture entry
@@ -391,18 +391,18 @@ namespace OpenSim.Region.CoreModules.Media.Moap
391 lock (media) 391 lock (media)
392 { 392 {
393 for (int i = 0; i < media.Count; i++) 393 for (int i = 0; i < media.Count; i++)
394 { 394 {
395 if (m_scene.Permissions.CanControlPrimMedia(agentId, part.UUID, i)) 395 if (m_scene.Permissions.CanControlPrimMedia(agentId, part.UUID, i))
396 { 396 {
397 media[i] = omu.FaceMedia[i]; 397 media[i] = omu.FaceMedia[i];
398 398
399 // When a face is cleared this is done by setting the MediaFlags in the TextureEntry via a normal 399 // When a face is cleared this is done by setting the MediaFlags in the TextureEntry via a normal
400 // texture update, so we don't need to worry about clearing MediaFlags here. 400 // texture update, so we don't need to worry about clearing MediaFlags here.
401 if (null == media[i]) 401 if (null == media[i])
402 continue; 402 continue;
403 403
404 Primitive.TextureEntryFace face = te.CreateFace((uint)i); 404 Primitive.TextureEntryFace face = te.CreateFace((uint)i);
405 face.MediaFlags = true; 405 face.MediaFlags = true;
406 406
407 // m_log.DebugFormat( 407 // m_log.DebugFormat(
408 // "[MOAP]: Media flags for face {0} is {1}", 408 // "[MOAP]: Media flags for face {0} is {1}",
@@ -414,11 +414,11 @@ namespace OpenSim.Region.CoreModules.Media.Moap
414 414
415 part.Shape.Textures = te; 415 part.Shape.Textures = te;
416 416
417// for (int i2 = 0; i2 < part.Shape.Textures.FaceTextures.Length; i2++) 417// for (int i2 = 0; i2 < part.Shape.Textures.FaceTextures.Length; i2++)
418// m_log.DebugFormat("[MOAP]: FaceTexture[{0}] is {1}", i2, part.Shape.Textures.FaceTextures[i2]); 418// m_log.DebugFormat("[MOAP]: FaceTexture[{0}] is {1}", i2, part.Shape.Textures.FaceTextures[i2]);
419 } 419 }
420 420
421 UpdateMediaUrl(part, agentId); 421 UpdateMediaUrl(part, agentId);
422 422
423 // Arguably, we could avoid sending a full update to the avatar that just changed the texture. 423 // Arguably, we could avoid sending a full update to the avatar that just changed the texture.
424 part.ScheduleFullUpdate(); 424 part.ScheduleFullUpdate();
@@ -439,16 +439,16 @@ namespace OpenSim.Region.CoreModules.Media.Moap
439 /// <returns></returns> 439 /// <returns></returns>
440 protected string HandleObjectMediaNavigateMessage( 440 protected string HandleObjectMediaNavigateMessage(
441 string request, string path, string param, OSHttpRequest httpRequest, OSHttpResponse httpResponse) 441 string request, string path, string param, OSHttpRequest httpRequest, OSHttpResponse httpResponse)
442 { 442 {
443// m_log.DebugFormat("[MOAP]: Got ObjectMediaNavigate request [{0}]", request); 443// m_log.DebugFormat("[MOAP]: Got ObjectMediaNavigate request [{0}]", request);
444 444
445 OSDMap osd = (OSDMap)OSDParser.DeserializeLLSDXml(request); 445 OSDMap osd = (OSDMap)OSDParser.DeserializeLLSDXml(request);
446 ObjectMediaNavigateMessage omn = new ObjectMediaNavigateMessage(); 446 ObjectMediaNavigateMessage omn = new ObjectMediaNavigateMessage();
447 omn.Deserialize(osd); 447 omn.Deserialize(osd);
448 448
449 UUID primId = omn.PrimID; 449 UUID primId = omn.PrimID;
450 450
451 SceneObjectPart part = m_scene.GetSceneObjectPart(primId); 451 SceneObjectPart part = m_scene.GetSceneObjectPart(primId);
452 452
453 if (null == part) 453 if (null == part)
454 { 454 {
@@ -456,12 +456,12 @@ namespace OpenSim.Region.CoreModules.Media.Moap
456 "[MOAP]: Received an ObjectMediaNavigateMessage for prim {0} but this doesn't exist in region {1}", 456 "[MOAP]: Received an ObjectMediaNavigateMessage for prim {0} but this doesn't exist in region {1}",
457 primId, m_scene.RegionInfo.RegionName); 457 primId, m_scene.RegionInfo.RegionName);
458 return string.Empty; 458 return string.Empty;
459 } 459 }
460 460
461 UUID agentId = default(UUID); 461 UUID agentId = default(UUID);
462 462
463 lock (m_omuCapUsers) 463 lock (m_omuCapUsers)
464 agentId = m_omuCapUsers[path]; 464 agentId = m_omuCapUsers[path];
465 465
466 if (!m_scene.Permissions.CanInteractWithPrimMedia(agentId, part.UUID, omn.Face)) 466 if (!m_scene.Permissions.CanInteractWithPrimMedia(agentId, part.UUID, omn.Face))
467 return string.Empty; 467 return string.Empty;
@@ -484,7 +484,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
484 return string.Empty; 484 return string.Empty;
485 485
486 if (me.EnableWhiteList) 486 if (me.EnableWhiteList)
487 { 487 {
488 if (!CheckUrlAgainstWhitelist(omn.URL, me.WhiteList)) 488 if (!CheckUrlAgainstWhitelist(omn.URL, me.WhiteList))
489 { 489 {
490// m_log.DebugFormat( 490// m_log.DebugFormat(
@@ -493,18 +493,18 @@ namespace OpenSim.Region.CoreModules.Media.Moap
493 493
494 return string.Empty; 494 return string.Empty;
495 } 495 }
496 } 496 }
497 497
498 me.CurrentURL = omn.URL; 498 me.CurrentURL = omn.URL;
499 499
500 UpdateMediaUrl(part, agentId); 500 UpdateMediaUrl(part, agentId);
501 501
502 part.ScheduleFullUpdate(); 502 part.ScheduleFullUpdate();
503 503
504 part.TriggerScriptChangedEvent(Changed.MEDIA); 504 part.TriggerScriptChangedEvent(Changed.MEDIA);
505 505
506 return OSDParser.SerializeLLSDXmlString(new OSD()); 506 return OSDParser.SerializeLLSDXmlString(new OSD());
507 } 507 }
508 508
509 /// <summary> 509 /// <summary>
510 /// Check that the face number is valid for the given prim. 510 /// Check that the face number is valid for the given prim.
@@ -519,7 +519,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
519 int maxFaces = part.GetNumberOfSides() - 1; 519 int maxFaces = part.GetNumberOfSides() - 1;
520 if (face > maxFaces) 520 if (face > maxFaces)
521 throw new ArgumentException( 521 throw new ArgumentException(
522 string.Format("Face argument was {0} but max is {1}", face, maxFaces)); 522 string.Format("Face argument was {0} but max is {1}", face, maxFaces));
523 } 523 }
524 524
525 /// <summary> 525 /// <summary>
@@ -542,9 +542,9 @@ namespace OpenSim.Region.CoreModules.Media.Moap
542 string rawVersion = part.MediaUrl.Substring(5, 10); 542 string rawVersion = part.MediaUrl.Substring(5, 10);
543 int version = int.Parse(rawVersion); 543 int version = int.Parse(rawVersion);
544 part.MediaUrl = string.Format("x-mv:{0:D10}/{1}", ++version, updateId); 544 part.MediaUrl = string.Format("x-mv:{0:D10}/{1}", ++version, updateId);
545 } 545 }
546 546
547// m_log.DebugFormat("[MOAP]: Storing media url [{0}] in prim {1} {2}", part.MediaUrl, part.Name, part.UUID); 547// m_log.DebugFormat("[MOAP]: Storing media url [{0}] in prim {1} {2}", part.MediaUrl, part.Name, part.UUID);
548 } 548 }
549 549
550 /// <summary> 550 /// <summary>
@@ -554,7 +554,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
554 /// <param name="whitelist"></param> 554 /// <param name="whitelist"></param>
555 /// <returns>true if the url matches an entry on the whitelist, false otherwise</returns> 555 /// <returns>true if the url matches an entry on the whitelist, false otherwise</returns>
556 protected bool CheckUrlAgainstWhitelist(string rawUrl, string[] whitelist) 556 protected bool CheckUrlAgainstWhitelist(string rawUrl, string[] whitelist)
557 { 557 {
558 Uri url = new Uri(rawUrl); 558 Uri url = new Uri(rawUrl);
559 559
560 foreach (string origWlUrl in whitelist) 560 foreach (string origWlUrl in whitelist)
@@ -575,7 +575,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
575 if (url.Host.Contains(wlUrl)) 575 if (url.Host.Contains(wlUrl))
576 { 576 {
577// m_log.DebugFormat("[MOAP]: Whitelist URL {0} matches {1}", origWlUrl, rawUrl); 577// m_log.DebugFormat("[MOAP]: Whitelist URL {0} matches {1}", origWlUrl, rawUrl);
578 return true; 578 return true;
579 } 579 }
580 } 580 }
581 else 581 else
@@ -588,7 +588,7 @@ namespace OpenSim.Region.CoreModules.Media.Moap
588 return true; 588 return true;
589 } 589 }
590 } 590 }
591 } 591 }
592 592
593 return false; 593 return false;
594 } 594 }
diff --git a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs
index 12750c5..db50339 100644
--- a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs
+++ b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs
@@ -49,8 +49,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
49 protected Scene m_scene = null; 49 protected Scene m_scene = null;
50 protected IDialogModule m_dialogModule; 50 protected IDialogModule m_dialogModule;
51 51
52 public string Name { get { return "Object BuySell Module"; } } 52 public string Name { get { return "Object BuySell Module"; } }
53 public Type ReplaceableInterface { get { return null; } } 53 public Type ReplaceableInterface { get { return null; } }
54 54
55 public void Initialise(IConfigSource source) {} 55 public void Initialise(IConfigSource source) {}
56 56
@@ -78,8 +78,8 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
78 78
79 public void SubscribeToClientEvents(IClientAPI client) 79 public void SubscribeToClientEvents(IClientAPI client)
80 { 80 {
81 client.OnObjectSaleInfo += ObjectSaleInfo; 81 client.OnObjectSaleInfo += ObjectSaleInfo;
82 } 82 }
83 83
84 protected void ObjectSaleInfo( 84 protected void ObjectSaleInfo(
85 IClientAPI client, UUID agentID, UUID sessionID, uint localID, byte saleType, int salePrice) 85 IClientAPI client, UUID agentID, UUID sessionID, uint localID, byte saleType, int salePrice)
@@ -99,7 +99,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
99 part.ParentGroup.HasGroupChanged = true; 99 part.ParentGroup.HasGroupChanged = true;
100 100
101 part.GetProperties(client); 101 part.GetProperties(client);
102 } 102 }
103 103
104 public bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType) 104 public bool BuyObject(IClientAPI remoteClient, UUID categoryID, uint localID, byte saleType)
105 { 105 {
@@ -225,7 +225,7 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
225 } 225 }
226 else 226 else
227 { 227 {
228 if (m_dialogModule != null) 228 if (m_dialogModule != null)
229 m_dialogModule.SendAlertToUser(remoteClient, "Cannot buy now. Your inventory is unavailable"); 229 m_dialogModule.SendAlertToUser(remoteClient, "Cannot buy now. Your inventory is unavailable");
230 return false; 230 return false;
231 } 231 }
@@ -261,6 +261,6 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
261 } 261 }
262 262
263 return true; 263 return true;
264 } 264 }
265 } 265 }
266} \ No newline at end of file 266} \ No newline at end of file
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
index bc54997..573a22a 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -397,13 +397,13 @@ namespace OpenSim.Region.CoreModules.World.Permissions
397 m_groupsModule = m_scene.RequestModuleInterface<IGroupsModule>(); 397 m_groupsModule = m_scene.RequestModuleInterface<IGroupsModule>();
398 398
399 if (m_groupsModule == null) 399 if (m_groupsModule == null)
400 m_log.Warn("[PERMISSIONS]: Groups module not found, group permissions will not work"); 400 m_log.Warn("[PERMISSIONS]: Groups module not found, group permissions will not work");
401 401
402 m_moapModule = m_scene.RequestModuleInterface<IMoapModule>(); 402 m_moapModule = m_scene.RequestModuleInterface<IMoapModule>();
403 403
404 // This log line will be commented out when no longer required for debugging 404 // This log line will be commented out when no longer required for debugging
405// if (m_moapModule == null) 405// if (m_moapModule == null)
406// m_log.Warn("[PERMISSIONS]: Media on a prim module not found, media on a prim permissions will not work"); 406// m_log.Warn("[PERMISSIONS]: Media on a prim module not found, media on a prim permissions will not work");
407 } 407 }
408 408
409 public void Close() 409 public void Close()
@@ -1906,7 +1906,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
1906 } 1906 }
1907 1907
1908 private bool CanControlPrimMedia(UUID agentID, UUID primID, int face) 1908 private bool CanControlPrimMedia(UUID agentID, UUID primID, int face)
1909 { 1909 {
1910// m_log.DebugFormat( 1910// m_log.DebugFormat(
1911// "[PERMISSONS]: Performing CanControlPrimMedia check with agentID {0}, primID {1}, face {2}", 1911// "[PERMISSONS]: Performing CanControlPrimMedia check with agentID {0}, primID {1}, face {2}",
1912// agentID, primID, face); 1912// agentID, primID, face);
@@ -1918,7 +1918,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
1918 if (null == part) 1918 if (null == part)
1919 return false; 1919 return false;
1920 1920
1921 MediaEntry me = m_moapModule.GetMediaEntry(part, face); 1921 MediaEntry me = m_moapModule.GetMediaEntry(part, face);
1922 1922
1923 // If there is no existing media entry then it can be controlled (in this context, created). 1923 // If there is no existing media entry then it can be controlled (in this context, created).
1924 if (null == me) 1924 if (null == me)
@@ -1929,7 +1929,7 @@ namespace OpenSim.Region.CoreModules.World.Permissions
1929// agentID, primID, face, me.ControlPermissions); 1929// agentID, primID, face, me.ControlPermissions);
1930 1930
1931 return GenericPrimMediaPermission(part, agentID, me.ControlPermissions); 1931 return GenericPrimMediaPermission(part, agentID, me.ControlPermissions);
1932 } 1932 }
1933 1933
1934 private bool CanInteractWithPrimMedia(UUID agentID, UUID primID, int face) 1934 private bool CanInteractWithPrimMedia(UUID agentID, UUID primID, int face)
1935 { 1935 {
@@ -1952,15 +1952,15 @@ namespace OpenSim.Region.CoreModules.World.Permissions
1952 1952
1953// m_log.DebugFormat( 1953// m_log.DebugFormat(
1954// "[PERMISSIONS]: Checking CanInteractWithPrimMedia for {0} on {1} face {2} with interact permissions {3}", 1954// "[PERMISSIONS]: Checking CanInteractWithPrimMedia for {0} on {1} face {2} with interact permissions {3}",
1955// agentID, primID, face, me.InteractPermissions); 1955// agentID, primID, face, me.InteractPermissions);
1956 1956
1957 return GenericPrimMediaPermission(part, agentID, me.InteractPermissions); 1957 return GenericPrimMediaPermission(part, agentID, me.InteractPermissions);
1958 } 1958 }
1959 1959
1960 private bool GenericPrimMediaPermission(SceneObjectPart part, UUID agentID, MediaPermission perms) 1960 private bool GenericPrimMediaPermission(SceneObjectPart part, UUID agentID, MediaPermission perms)
1961 { 1961 {
1962// if (IsAdministrator(agentID)) 1962// if (IsAdministrator(agentID))
1963// return true; 1963// return true;
1964 1964
1965 if ((perms & MediaPermission.Anyone) == MediaPermission.Anyone) 1965 if ((perms & MediaPermission.Anyone) == MediaPermission.Anyone)
1966 return true; 1966 return true;
@@ -1969,15 +1969,15 @@ namespace OpenSim.Region.CoreModules.World.Permissions
1969 { 1969 {
1970 if (agentID == part.OwnerID) 1970 if (agentID == part.OwnerID)
1971 return true; 1971 return true;
1972 } 1972 }
1973 1973
1974 if ((perms & MediaPermission.Group) == MediaPermission.Group) 1974 if ((perms & MediaPermission.Group) == MediaPermission.Group)
1975 { 1975 {
1976 if (IsGroupMember(part.GroupID, agentID, 0)) 1976 if (IsGroupMember(part.GroupID, agentID, 0))
1977 return true; 1977 return true;
1978 } 1978 }
1979 1979
1980 return false; 1980 return false;
1981 } 1981 }
1982 } 1982 }
1983} \ No newline at end of file 1983} \ No newline at end of file
diff --git a/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs b/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs
index cb80111..25d73c2 100644
--- a/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs
+++ b/OpenSim/Region/CoreModules/World/Terrain/TerrainModule.cs
@@ -814,7 +814,7 @@ namespace OpenSim.Region.CoreModules.World.Terrain
814 { 814 {
815 //m_log.Debug("Terrain packet unacked, resending patch: " + patchX + " , " + patchY); 815 //m_log.Debug("Terrain packet unacked, resending patch: " + patchX + " , " + patchY);
816 client.SendLayerData(patchX, patchY, m_scene.Heightmap.GetFloatsSerialised()); 816 client.SendLayerData(patchX, patchY, m_scene.Heightmap.GetFloatsSerialised());
817 } 817 }
818 818
819 private void StoreUndoState() 819 private void StoreUndoState()
820 { 820 {
diff --git a/OpenSim/Region/CoreModules/World/Wind/WindModule.cs b/OpenSim/Region/CoreModules/World/Wind/WindModule.cs
index 9736b73..6bac555 100644
--- a/OpenSim/Region/CoreModules/World/Wind/WindModule.cs
+++ b/OpenSim/Region/CoreModules/World/Wind/WindModule.cs
@@ -425,7 +425,7 @@ namespace OpenSim.Region.CoreModules
425 { 425 {
426 if (m_ready) 426 if (m_ready)
427 { 427 {
428 if(m_scene.GetRootAgentCount() > 0) 428 if (m_scene.GetRootAgentCount() > 0)
429 { 429 {
430 // Ask wind plugin to generate a LL wind array to be cached locally 430 // Ask wind plugin to generate a LL wind array to be cached locally
431 // Try not to update this too often, as it may involve array copies 431 // Try not to update this too often, as it may involve array copies
diff --git a/OpenSim/Region/CoreModules/World/WorldMap/MapImageModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/MapImageModule.cs
index 1d9c2bd..1bd1371 100644
--- a/OpenSim/Region/CoreModules/World/WorldMap/MapImageModule.cs
+++ b/OpenSim/Region/CoreModules/World/WorldMap/MapImageModule.cs
@@ -228,7 +228,7 @@ namespace OpenSim.Region.CoreModules.World.WorldMap
228 SceneObjectGroup mapdot = (SceneObjectGroup)obj; 228 SceneObjectGroup mapdot = (SceneObjectGroup)obj;
229 Color mapdotspot = Color.Gray; // Default color when prim color is white 229 Color mapdotspot = Color.Gray; // Default color when prim color is white
230 230
231 // Loop over prim in group 231 // Loop over prim in group
232 List<SceneObjectPart> partList = null; 232 List<SceneObjectPart> partList = null;
233 lock (mapdot.Children) 233 lock (mapdot.Children)
234 partList = new List<SceneObjectPart>(mapdot.Children.Values); 234 partList = new List<SceneObjectPart>(mapdot.Children.Values);
diff --git a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
index f036d85..fbc8a50 100644
--- a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
+++ b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
@@ -307,7 +307,7 @@ namespace OpenSim.Region.CoreModules.World.WorldMap
307 lock (m_rootAgents) 307 lock (m_rootAgents)
308 { 308 {
309 m_rootAgents.Remove(AgentId); 309 m_rootAgents.Remove(AgentId);
310 if(m_rootAgents.Count == 0) 310 if (m_rootAgents.Count == 0)
311 StopThread(); 311 StopThread();
312 } 312 }
313 } 313 }
diff --git a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
index 05c1e00..1140b9b 100644
--- a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
@@ -55,7 +55,7 @@ namespace OpenSim.Region.Framework.Interfaces
55 /// <param name="rot"></param> 55 /// <param name="rot"></param>
56 /// <param name="attachPos"></param> 56 /// <param name="attachPos"></param>
57 /// <param name="silent"></param> 57 /// <param name="silent"></param>
58 /// <returns>true if the object was successfully attached, false otherwise</returns> 58 /// <returns>true if the object was successfully attached, false otherwise</returns>
59 bool AttachObject( 59 bool AttachObject(
60 IClientAPI remoteClient, SceneObjectGroup grp, uint AttachmentPt, bool silent); 60 IClientAPI remoteClient, SceneObjectGroup grp, uint AttachmentPt, bool silent);
61 61
diff --git a/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs b/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs
index 2c091e7..4c501f6 100644
--- a/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs
@@ -65,7 +65,7 @@ namespace OpenSim.Region.Framework.Interfaces
65 /// Get a group 65 /// Get a group
66 /// </summary> 66 /// </summary>
67 /// <param name="GroupID">ID of the group</param> 67 /// <param name="GroupID">ID of the group</param>
68 /// <returns>The group's data. Null if there is no such group.</returns> 68 /// <returns>The group's data. Null if there is no such group.</returns>
69 GroupRecord GetGroupRecord(UUID GroupID); 69 GroupRecord GetGroupRecord(UUID GroupID);
70 70
71 void ActivateGroup(IClientAPI remoteClient, UUID groupID); 71 void ActivateGroup(IClientAPI remoteClient, UUID groupID);
@@ -74,14 +74,14 @@ namespace OpenSim.Region.Framework.Interfaces
74 List<GroupRolesData> GroupRoleDataRequest(IClientAPI remoteClient, UUID groupID); 74 List<GroupRolesData> GroupRoleDataRequest(IClientAPI remoteClient, UUID groupID);
75 List<GroupRoleMembersData> GroupRoleMembersRequest(IClientAPI remoteClient, UUID groupID); 75 List<GroupRoleMembersData> GroupRoleMembersRequest(IClientAPI remoteClient, UUID groupID);
76 GroupProfileData GroupProfileRequest(IClientAPI remoteClient, UUID groupID); 76 GroupProfileData GroupProfileRequest(IClientAPI remoteClient, UUID groupID);
77 GroupMembershipData[] GetMembershipData(UUID UserID); 77 GroupMembershipData[] GetMembershipData(UUID UserID);
78 GroupMembershipData GetMembershipData(UUID GroupID, UUID UserID); 78 GroupMembershipData GetMembershipData(UUID GroupID, UUID UserID);
79 79
80 void UpdateGroupInfo(IClientAPI remoteClient, UUID groupID, string charter, bool showInList, UUID insigniaID, int membershipFee, bool openEnrollment, bool allowPublish, bool maturePublish); 80 void UpdateGroupInfo(IClientAPI remoteClient, UUID groupID, string charter, bool showInList, UUID insigniaID, int membershipFee, bool openEnrollment, bool allowPublish, bool maturePublish);
81 81
82 void SetGroupAcceptNotices(IClientAPI remoteClient, UUID groupID, bool acceptNotices, bool listInProfile); 82 void SetGroupAcceptNotices(IClientAPI remoteClient, UUID groupID, bool acceptNotices, bool listInProfile);
83 83
84 void GroupTitleUpdate(IClientAPI remoteClient, UUID GroupID, UUID TitleRoleID); 84 void GroupTitleUpdate(IClientAPI remoteClient, UUID GroupID, UUID TitleRoleID);
85 85
86 GroupNoticeData[] GroupNoticesListRequest(IClientAPI remoteClient, UUID GroupID); 86 GroupNoticeData[] GroupNoticesListRequest(IClientAPI remoteClient, UUID GroupID);
87 string GetGroupTitle(UUID avatarID); 87 string GetGroupTitle(UUID avatarID);
diff --git a/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs b/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs
index 01066e6..ddf7565 100644
--- a/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs
@@ -43,14 +43,14 @@ namespace OpenSim.Region.Framework.Interfaces
43 /// <param name="reportedException">Contains the exception generated if the save did not succeed</param> 43 /// <param name="reportedException">Contains the exception generated if the save did not succeed</param>
44 public delegate void InventoryArchiveSaved( 44 public delegate void InventoryArchiveSaved(
45 Guid id, bool succeeded, UserAccount userInfo, string invPath, Stream saveStream, Exception reportedException); 45 Guid id, bool succeeded, UserAccount userInfo, string invPath, Stream saveStream, Exception reportedException);
46 46
47 public interface IInventoryArchiverModule 47 public interface IInventoryArchiverModule
48 { 48 {
49 /// <summary> 49 /// <summary>
50 /// Fired when an archive inventory save has been completed. 50 /// Fired when an archive inventory save has been completed.
51 /// </summary> 51 /// </summary>
52 event InventoryArchiveSaved OnInventoryArchiveSaved; 52 event InventoryArchiveSaved OnInventoryArchiveSaved;
53 53
54 /// <summary> 54 /// <summary>
55 /// Dearchive a user's inventory folder from the given stream 55 /// Dearchive a user's inventory folder from the given stream
56 /// </summary> 56 /// </summary>
@@ -60,7 +60,7 @@ namespace OpenSim.Region.Framework.Interfaces
60 /// <param name="loadStream">The stream from which the inventory archive will be loaded</param> 60 /// <param name="loadStream">The stream from which the inventory archive will be loaded</param>
61 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns> 61 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns>
62 bool DearchiveInventory(string firstName, string lastName, string invPath, string pass, Stream loadStream); 62 bool DearchiveInventory(string firstName, string lastName, string invPath, string pass, Stream loadStream);
63 63
64 /// <summary> 64 /// <summary>
65 /// Dearchive a user's inventory folder from the given stream 65 /// Dearchive a user's inventory folder from the given stream
66 /// </summary> 66 /// </summary>
@@ -72,8 +72,8 @@ namespace OpenSim.Region.Framework.Interfaces
72 /// the loaded IAR with existing folders where possible.</param> 72 /// the loaded IAR with existing folders where possible.</param>
73 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns> 73 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns>
74 bool DearchiveInventory( 74 bool DearchiveInventory(
75 string firstName, string lastName, string invPath, string pass, Stream loadStream, 75 string firstName, string lastName, string invPath, string pass, Stream loadStream,
76 Dictionary<string, object> options); 76 Dictionary<string, object> options);
77 77
78 /// <summary> 78 /// <summary>
79 /// Archive a user's inventory folder to the given stream 79 /// Archive a user's inventory folder to the given stream
@@ -85,7 +85,7 @@ namespace OpenSim.Region.Framework.Interfaces
85 /// <param name="saveStream">The stream to which the inventory archive will be saved</param> 85 /// <param name="saveStream">The stream to which the inventory archive will be saved</param>
86 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns> 86 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns>
87 bool ArchiveInventory(Guid id, string firstName, string lastName, string invPath, string pass, Stream saveStream); 87 bool ArchiveInventory(Guid id, string firstName, string lastName, string invPath, string pass, Stream saveStream);
88 88
89 /// <summary> 89 /// <summary>
90 /// Archive a user's inventory folder to the given stream 90 /// Archive a user's inventory folder to the given stream
91 /// </summary> 91 /// </summary>
@@ -97,7 +97,7 @@ namespace OpenSim.Region.Framework.Interfaces
97 /// <param name="options">Archiving options. Currently, there are none.</param> 97 /// <param name="options">Archiving options. Currently, there are none.</param>
98 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns> 98 /// <returns>true if the first stage of the operation succeeded, false otherwise</returns>
99 bool ArchiveInventory( 99 bool ArchiveInventory(
100 Guid id, string firstName, string lastName, string invPath, string pass, Stream saveStream, 100 Guid id, string firstName, string lastName, string invPath, string pass, Stream saveStream,
101 Dictionary<string, object> options); 101 Dictionary<string, object> options);
102 } 102 }
103} 103}
diff --git a/OpenSim/Region/Framework/Interfaces/IMoapModule.cs b/OpenSim/Region/Framework/Interfaces/IMoapModule.cs
index 24b6860..1d3d240 100644
--- a/OpenSim/Region/Framework/Interfaces/IMoapModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IMoapModule.cs
@@ -63,5 +63,5 @@ namespace OpenSim.Region.Framework.Interfaces
63 /// <param name="part"></param> 63 /// <param name="part"></param>
64 /// <param name="face">/param> 64 /// <param name="face">/param>
65 void ClearMediaEntry(SceneObjectPart part, int face); 65 void ClearMediaEntry(SceneObjectPart part, int face);
66 } 66 }
67} \ No newline at end of file 67} \ No newline at end of file
diff --git a/OpenSim/Region/Framework/Interfaces/IWorldMapModule.cs b/OpenSim/Region/Framework/Interfaces/IWorldMapModule.cs
index d6e31f4..65c57a6 100644
--- a/OpenSim/Region/Framework/Interfaces/IWorldMapModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IWorldMapModule.cs
@@ -31,7 +31,7 @@ namespace OpenSim.Region.Framework.Interfaces
31 { 31 {
32 /// <summary> 32 /// <summary>
33 /// Generate a map tile for the scene. a terrain texture for this scene 33 /// Generate a map tile for the scene. a terrain texture for this scene
34 /// </summary> 34 /// </summary>
35 void GenerateMaptile(); 35 void GenerateMaptile();
36 } 36 }
37} 37}
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 72b8de8..437b91a 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -332,7 +332,7 @@ namespace OpenSim.Region.Framework.Scenes
332 /// If the object is being attached, then the avatarID will be present. If the object is being detached then 332 /// If the object is being attached, then the avatarID will be present. If the object is being detached then
333 /// the avatarID is UUID.Zero (I know, this doesn't make much sense but now it's historical). 333 /// the avatarID is UUID.Zero (I know, this doesn't make much sense but now it's historical).
334 public delegate void Attach(uint localID, UUID itemID, UUID avatarID); 334 public delegate void Attach(uint localID, UUID itemID, UUID avatarID);
335 public event Attach OnAttach; 335 public event Attach OnAttach;
336 336
337 /// <summary> 337 /// <summary>
338 /// Called immediately after an object is loaded from storage. 338 /// Called immediately after an object is loaded from storage.
@@ -344,7 +344,7 @@ namespace OpenSim.Region.Framework.Scenes
344 /// Called immediately before an object is saved to storage. 344 /// Called immediately before an object is saved to storage.
345 /// </summary> 345 /// </summary>
346 /// <param name="persistingSo"> 346 /// <param name="persistingSo">
347 /// The scene object being persisted. 347 /// The scene object being persisted.
348 /// This is actually a copy of the original scene object so changes made here will be saved to storage but will not be kept in memory. 348 /// This is actually a copy of the original scene object so changes made here will be saved to storage but will not be kept in memory.
349 /// </param> 349 /// </param>
350 /// <param name="originalSo"> 350 /// <param name="originalSo">
@@ -363,7 +363,7 @@ namespace OpenSim.Region.Framework.Scenes
363 public delegate void SceneObjectPartCopyDelegate(SceneObjectPart copy, SceneObjectPart original, bool userExposed); 363 public delegate void SceneObjectPartCopyDelegate(SceneObjectPart copy, SceneObjectPart original, bool userExposed);
364 364
365 public delegate void RegionUp(GridRegion region); 365 public delegate void RegionUp(GridRegion region);
366 public event RegionUp OnRegionUp; 366 public event RegionUp OnRegionUp;
367 367
368 public class MoneyTransferArgs : EventArgs 368 public class MoneyTransferArgs : EventArgs
369 { 369 {
@@ -2063,7 +2063,7 @@ namespace OpenSim.Region.Framework.Scenes
2063 } 2063 }
2064 } 2064 }
2065 } 2065 }
2066 } 2066 }
2067 2067
2068 public void TriggerOnSceneObjectPreSave(SceneObjectGroup persistingSo, SceneObjectGroup originalSo) 2068 public void TriggerOnSceneObjectPreSave(SceneObjectGroup persistingSo, SceneObjectGroup originalSo)
2069 { 2069 {
@@ -2105,7 +2105,7 @@ namespace OpenSim.Region.Framework.Scenes
2105 } 2105 }
2106 } 2106 }
2107 } 2107 }
2108 } 2108 }
2109 2109
2110 public void TriggerOnParcelPropertiesUpdateRequest(LandUpdateArgs args, 2110 public void TriggerOnParcelPropertiesUpdateRequest(LandUpdateArgs args,
2111 int local_id, IClientAPI remote_client) 2111 int local_id, IClientAPI remote_client)
@@ -2127,6 +2127,6 @@ namespace OpenSim.Region.Framework.Scenes
2127 } 2127 }
2128 } 2128 }
2129 } 2129 }
2130 } 2130 }
2131 } 2131 }
2132} 2132}
diff --git a/OpenSim/Region/Framework/Scenes/Prioritizer.cs b/OpenSim/Region/Framework/Scenes/Prioritizer.cs
index 272f718..19f8180 100644
--- a/OpenSim/Region/Framework/Scenes/Prioritizer.cs
+++ b/OpenSim/Region/Framework/Scenes/Prioritizer.cs
@@ -1,3 +1,30 @@
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
1using System; 28using System;
2using System.Collections.Generic; 29using System.Collections.Generic;
3using log4net; 30using log4net;
@@ -35,7 +62,7 @@ namespace OpenSim.Region.Framework.Scenes
35 62
36 /// <summary> 63 /// <summary>
37 /// This is added to the priority of all child prims, to make sure that the root prim update is sent to the 64 /// This is added to the priority of all child prims, to make sure that the root prim update is sent to the
38 /// viewer before child prim updates. 65 /// viewer before child prim updates.
39 /// The adjustment is added to child prims and subtracted from root prims, so the gap ends up 66 /// The adjustment is added to child prims and subtracted from root prims, so the gap ends up
40 /// being double. We do it both ways so that there is a still a priority delta even if the priority is already 67 /// being double. We do it both ways so that there is a still a priority delta even if the priority is already
41 /// double.MinValue or double.MaxValue. 68 /// double.MinValue or double.MaxValue.
@@ -123,9 +150,9 @@ namespace OpenSim.Region.Framework.Scenes
123 if (entity is SceneObjectPart) 150 if (entity is SceneObjectPart)
124 { 151 {
125 // Can't use Scene.GetGroupByPrim() here, since the entity may have been delete from the scene 152 // Can't use Scene.GetGroupByPrim() here, since the entity may have been delete from the scene
126 // before its scheduled update was triggered 153 // before its scheduled update was triggered
127 //entityPos = m_scene.GetGroupByPrim(entity.LocalId).AbsolutePosition; 154 //entityPos = m_scene.GetGroupByPrim(entity.LocalId).AbsolutePosition;
128 entityPos = ((SceneObjectPart)entity).ParentGroup.AbsolutePosition; 155 entityPos = ((SceneObjectPart)entity).ParentGroup.AbsolutePosition;
129 } 156 }
130 else 157 else
131 { 158 {
@@ -150,11 +177,11 @@ namespace OpenSim.Region.Framework.Scenes
150 // Use group position for child prims 177 // Use group position for child prims
151 Vector3 entityPos = entity.AbsolutePosition; 178 Vector3 entityPos = entity.AbsolutePosition;
152 if (entity is SceneObjectPart) 179 if (entity is SceneObjectPart)
153 { 180 {
154 // Can't use Scene.GetGroupByPrim() here, since the entity may have been delete from the scene 181 // Can't use Scene.GetGroupByPrim() here, since the entity may have been delete from the scene
155 // before its scheduled update was triggered 182 // before its scheduled update was triggered
156 //entityPos = m_scene.GetGroupByPrim(entity.LocalId).AbsolutePosition; 183 //entityPos = m_scene.GetGroupByPrim(entity.LocalId).AbsolutePosition;
157 entityPos = ((SceneObjectPart)entity).ParentGroup.AbsolutePosition; 184 entityPos = ((SceneObjectPart)entity).ParentGroup.AbsolutePosition;
158 } 185 }
159 else 186 else
160 { 187 {
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index a439eb9..838c648 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -145,7 +145,7 @@ namespace OpenSim.Region.Framework.Scenes
145 item.Owner, item.Name, item.ID); 145 item.Owner, item.Name, item.ID);
146 146
147 return false; 147 return false;
148 } 148 }
149 } 149 }
150 150
151 /// <summary> 151 /// <summary>
@@ -253,7 +253,7 @@ namespace OpenSim.Region.Framework.Scenes
253 // Update item with new asset 253 // Update item with new asset
254 item.AssetID = asset.FullID; 254 item.AssetID = asset.FullID;
255 if (group.UpdateInventoryItem(item)) 255 if (group.UpdateInventoryItem(item))
256 remoteClient.SendAgentAlertMessage("Script saved", false); 256 remoteClient.SendAgentAlertMessage("Script saved", false);
257 257
258 part.GetProperties(remoteClient); 258 part.GetProperties(remoteClient);
259 259
@@ -1975,7 +1975,7 @@ namespace OpenSim.Region.Framework.Scenes
1975 return null; 1975 return null;
1976 1976
1977 if (!Permissions.CanRezObject(group.PrimCount, item.OwnerID, pos)) 1977 if (!Permissions.CanRezObject(group.PrimCount, item.OwnerID, pos))
1978 return null; 1978 return null;
1979 1979
1980 if (!Permissions.BypassPermissions()) 1980 if (!Permissions.BypassPermissions())
1981 { 1981 {
@@ -2053,7 +2053,7 @@ namespace OpenSim.Region.Framework.Scenes
2053 2053
2054 List<SceneObjectPart> partList = null; 2054 List<SceneObjectPart> partList = null;
2055 lock (sog.Children) 2055 lock (sog.Children)
2056 partList = new List<SceneObjectPart>(sog.Children.Values); 2056 partList = new List<SceneObjectPart>(sog.Children.Values);
2057 2057
2058 foreach (SceneObjectPart child in partList) 2058 foreach (SceneObjectPart child in partList)
2059 child.Inventory.ChangeInventoryOwner(ownerID); 2059 child.Inventory.ChangeInventoryOwner(ownerID);
@@ -2068,7 +2068,7 @@ namespace OpenSim.Region.Framework.Scenes
2068 2068
2069 List<SceneObjectPart> partList = null; 2069 List<SceneObjectPart> partList = null;
2070 lock (sog.Children) 2070 lock (sog.Children)
2071 partList = new List<SceneObjectPart>(sog.Children.Values); 2071 partList = new List<SceneObjectPart>(sog.Children.Values);
2072 2072
2073 foreach (SceneObjectPart child in partList) 2073 foreach (SceneObjectPart child in partList)
2074 { 2074 {
@@ -2078,7 +2078,7 @@ namespace OpenSim.Region.Framework.Scenes
2078 2078
2079 sog.SetOwnerId(groupID); 2079 sog.SetOwnerId(groupID);
2080 sog.ApplyNextOwnerPermissions(); 2080 sog.ApplyNextOwnerPermissions();
2081 } 2081 }
2082 } 2082 }
2083 2083
2084 foreach (uint localID in localIDs) 2084 foreach (uint localID in localIDs)
diff --git a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
index 2f69476..7788e43 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
@@ -164,7 +164,7 @@ namespace OpenSim.Region.Framework.Scenes
164 164
165 List<SceneObjectPart> partList = null; 165 List<SceneObjectPart> partList = null;
166 lock (sog.Children) 166 lock (sog.Children)
167 partList = new List<SceneObjectPart>(sog.Children.Values); 167 partList = new List<SceneObjectPart>(sog.Children.Values);
168 168
169 foreach (SceneObjectPart part in partList) 169 foreach (SceneObjectPart part in partList)
170 { 170 {
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
index 4e80bf2..06890a0 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs
@@ -997,6 +997,6 @@ namespace OpenSim.Region.Framework.Scenes
997 } 997 }
998 } 998 }
999 return true; 999 return true;
1000 } 1000 }
1001 } 1001 }
1002} \ No newline at end of file 1002} \ No newline at end of file
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 9a9ef5f..6d2ae5a 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -1952,7 +1952,7 @@ namespace OpenSim.Region.Framework.Scenes
1952 sceneObject.ScheduleGroupForFullUpdate(); 1952 sceneObject.ScheduleGroupForFullUpdate();
1953 1953
1954 return sceneObject; 1954 return sceneObject;
1955 } 1955 }
1956 1956
1957 /// <summary> 1957 /// <summary>
1958 /// Add an object into the scene that has come from storage 1958 /// Add an object into the scene that has come from storage
@@ -2045,7 +2045,7 @@ namespace OpenSim.Region.Framework.Scenes
2045 /// <returns></returns> 2045 /// <returns></returns>
2046 public bool AddNewSceneObject( 2046 public bool AddNewSceneObject(
2047 SceneObjectGroup sceneObject, bool attachToBackup, Vector3 pos, Quaternion rot, Vector3 vel) 2047 SceneObjectGroup sceneObject, bool attachToBackup, Vector3 pos, Quaternion rot, Vector3 vel)
2048 { 2048 {
2049 return m_sceneGraph.AddNewSceneObject(sceneObject, attachToBackup, pos, rot, vel); 2049 return m_sceneGraph.AddNewSceneObject(sceneObject, attachToBackup, pos, rot, vel);
2050 } 2050 }
2051 2051
@@ -2430,7 +2430,7 @@ namespace OpenSim.Region.Framework.Scenes
2430 ScenePresence sp = GetScenePresence(userID); 2430 ScenePresence sp = GetScenePresence(userID);
2431 if (sp != null && AttachmentsModule != null) 2431 if (sp != null && AttachmentsModule != null)
2432 { 2432 {
2433 uint attPt = (uint)sp.Appearance.GetAttachpoint(itemID); 2433 uint attPt = (uint)sp.Appearance.GetAttachpoint(itemID);
2434 AttachmentsModule.RezSingleAttachmentFromInventory(sp.ControllingClient, itemID, attPt); 2434 AttachmentsModule.RezSingleAttachmentFromInventory(sp.ControllingClient, itemID, attPt);
2435 } 2435 }
2436 2436
@@ -2473,7 +2473,7 @@ namespace OpenSim.Region.Framework.Scenes
2473 sceneObject.RootPart.AddFlag(PrimFlags.Phantom); 2473 sceneObject.RootPart.AddFlag(PrimFlags.Phantom);
2474 2474
2475 // Don't sent a full update here because this will cause full updates to be sent twice for 2475 // Don't sent a full update here because this will cause full updates to be sent twice for
2476 // attachments on region crossings, resulting in viewer glitches. 2476 // attachments on region crossings, resulting in viewer glitches.
2477 AddRestoredSceneObject(sceneObject, false, false, false); 2477 AddRestoredSceneObject(sceneObject, false, false, false);
2478 2478
2479 // Handle attachment special case 2479 // Handle attachment special case
@@ -2717,7 +2717,7 @@ namespace OpenSim.Region.Framework.Scenes
2717 } 2717 }
2718 2718
2719 public virtual void SubscribeToClientPrimEvents(IClientAPI client) 2719 public virtual void SubscribeToClientPrimEvents(IClientAPI client)
2720 { 2720 {
2721 client.OnUpdatePrimGroupPosition += m_sceneGraph.UpdatePrimPosition; 2721 client.OnUpdatePrimGroupPosition += m_sceneGraph.UpdatePrimPosition;
2722 client.OnUpdatePrimSinglePosition += m_sceneGraph.UpdatePrimSinglePosition; 2722 client.OnUpdatePrimSinglePosition += m_sceneGraph.UpdatePrimSinglePosition;
2723 client.OnUpdatePrimGroupRotation += m_sceneGraph.UpdatePrimRotation; 2723 client.OnUpdatePrimGroupRotation += m_sceneGraph.UpdatePrimRotation;
@@ -2753,7 +2753,7 @@ namespace OpenSim.Region.Framework.Scenes
2753 client.OnUndo += m_sceneGraph.HandleUndo; 2753 client.OnUndo += m_sceneGraph.HandleUndo;
2754 client.OnRedo += m_sceneGraph.HandleRedo; 2754 client.OnRedo += m_sceneGraph.HandleRedo;
2755 client.OnObjectDescription += m_sceneGraph.PrimDescription; 2755 client.OnObjectDescription += m_sceneGraph.PrimDescription;
2756 client.OnObjectDrop += m_sceneGraph.DropObject; 2756 client.OnObjectDrop += m_sceneGraph.DropObject;
2757 client.OnObjectIncludeInSearch += m_sceneGraph.MakeObjectSearchable; 2757 client.OnObjectIncludeInSearch += m_sceneGraph.MakeObjectSearchable;
2758 client.OnObjectOwner += ObjectOwner; 2758 client.OnObjectOwner += ObjectOwner;
2759 } 2759 }
@@ -3705,7 +3705,7 @@ namespace OpenSim.Region.Framework.Scenes
3705 public virtual void AgentCrossing(UUID agentID, Vector3 position, bool isFlying) 3705 public virtual void AgentCrossing(UUID agentID, Vector3 position, bool isFlying)
3706 { 3706 {
3707 ScenePresence presence = GetScenePresence(agentID); 3707 ScenePresence presence = GetScenePresence(agentID);
3708 if(presence != null) 3708 if (presence != null)
3709 { 3709 {
3710 try 3710 try
3711 { 3711 {
diff --git a/OpenSim/Region/Framework/Scenes/SceneBase.cs b/OpenSim/Region/Framework/Scenes/SceneBase.cs
index f8591ba..c71aefa 100644
--- a/OpenSim/Region/Framework/Scenes/SceneBase.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneBase.cs
@@ -521,7 +521,7 @@ namespace OpenSim.Region.Framework.Scenes
521 /// <param name="shorthelp"></param> 521 /// <param name="shorthelp"></param>
522 /// <param name="longhelp"></param> 522 /// <param name="longhelp"></param>
523 /// <param name="descriptivehelp"></param> 523 /// <param name="descriptivehelp"></param>
524 /// <param name="callback"></param> 524 /// <param name="callback"></param>
525 public void AddCommand( 525 public void AddCommand(
526 object mod, string command, string shorthelp, string longhelp, string descriptivehelp, CommandDelegate callback) 526 object mod, string command, string shorthelp, string longhelp, string descriptivehelp, CommandDelegate callback)
527 { 527 {
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
index f779a6d..5ac8ff5 100644
--- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs
@@ -298,7 +298,7 @@ namespace OpenSim.Region.Framework.Scenes
298 /// <param name="pos">Position of the object</param> 298 /// <param name="pos">Position of the object</param>
299 /// <param name="rot">Rotation of the object</param> 299 /// <param name="rot">Rotation of the object</param>
300 /// <param name="vel">Velocity of the object. This parameter only has an effect if the object is physical</param> 300 /// <param name="vel">Velocity of the object. This parameter only has an effect if the object is physical</param>
301 /// <returns></returns> 301 /// <returns></returns>
302 public bool AddNewSceneObject( 302 public bool AddNewSceneObject(
303 SceneObjectGroup sceneObject, bool attachToBackup, Vector3 pos, Quaternion rot, Vector3 vel) 303 SceneObjectGroup sceneObject, bool attachToBackup, Vector3 pos, Quaternion rot, Vector3 vel)
304 { 304 {
@@ -322,7 +322,7 @@ namespace OpenSim.Region.Framework.Scenes
322 } 322 }
323 323
324 return true; 324 return true;
325 } 325 }
326 326
327 /// <summary> 327 /// <summary>
328 /// Add an object to the scene. This will both update the scene, and send information about the 328 /// Add an object to the scene. This will both update the scene, and send information about the
@@ -1284,7 +1284,7 @@ namespace OpenSim.Region.Framework.Scenes
1284 SceneObjectGroup group = GetGroupByPrim(localID); 1284 SceneObjectGroup group = GetGroupByPrim(localID);
1285 1285
1286 if (group != null) 1286 if (group != null)
1287 { 1287 {
1288 if (group.IsAttachment || (group.RootPart.Shape.PCode == 9 && group.RootPart.Shape.State != 0)) 1288 if (group.IsAttachment || (group.RootPart.Shape.PCode == 9 && group.RootPart.Shape.State != 0))
1289 { 1289 {
1290 if (m_parentScene.AttachmentsModule != null) 1290 if (m_parentScene.AttachmentsModule != null)
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index 454f031..2c1f207 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -677,7 +677,7 @@ namespace OpenSim.Region.Framework.Scenes
677 minY = 256f; 677 minY = 256f;
678 minZ = 8192f; 678 minZ = 8192f;
679 679
680 lock(m_parts) 680 lock (m_parts)
681 { 681 {
682 foreach (SceneObjectPart part in m_parts.Values) 682 foreach (SceneObjectPart part in m_parts.Values)
683 { 683 {
@@ -1005,7 +1005,7 @@ namespace OpenSim.Region.Framework.Scenes
1005 AbsolutePosition = detachedpos; 1005 AbsolutePosition = detachedpos;
1006 m_rootPart.AttachedAvatar = UUID.Zero; 1006 m_rootPart.AttachedAvatar = UUID.Zero;
1007 1007
1008 //Anakin Lohner bug #3839 1008 //Anakin Lohner bug #3839
1009 lock (m_parts) 1009 lock (m_parts)
1010 { 1010 {
1011 foreach (SceneObjectPart p in m_parts.Values) 1011 foreach (SceneObjectPart p in m_parts.Values)
@@ -1226,7 +1226,7 @@ namespace OpenSim.Region.Framework.Scenes
1226 } 1226 }
1227 1227
1228 /// <summary> 1228 /// <summary>
1229 /// Delete this group from its scene. 1229 /// Delete this group from its scene.
1230 /// </summary> 1230 /// </summary>
1231 /// 1231 ///
1232 /// This only handles the in-world consequences of deletion (e.g. any avatars sitting on it are forcibly stood 1232 /// This only handles the in-world consequences of deletion (e.g. any avatars sitting on it are forcibly stood
@@ -1383,7 +1383,7 @@ namespace OpenSim.Region.Framework.Scenes
1383 if (!m_isBackedUp) 1383 if (!m_isBackedUp)
1384 { 1384 {
1385// m_log.DebugFormat( 1385// m_log.DebugFormat(
1386// "[WATER WARS]: Ignoring backup of {0} {1} since object is not marked to be backed up", Name, UUID); 1386// "[WATER WARS]: Ignoring backup of {0} {1} since object is not marked to be backed up", Name, UUID);
1387 return; 1387 return;
1388 } 1388 }
1389 1389
@@ -1395,7 +1395,7 @@ namespace OpenSim.Region.Framework.Scenes
1395 } 1395 }
1396 1396
1397 // Since this is the top of the section of call stack for backing up a particular scene object, don't let 1397 // Since this is the top of the section of call stack for backing up a particular scene object, don't let
1398 // any exception propogate upwards. 1398 // any exception propogate upwards.
1399 try 1399 try
1400 { 1400 {
1401 if (!m_scene.ShuttingDown) // if shutting down then there will be nothing to handle the return so leave till next restart 1401 if (!m_scene.ShuttingDown) // if shutting down then there will be nothing to handle the return so leave till next restart
@@ -1546,7 +1546,7 @@ namespace OpenSim.Region.Framework.Scenes
1546 newPart.LinkNum = part.LinkNum; 1546 newPart.LinkNum = part.LinkNum;
1547 } 1547 }
1548 1548
1549 // Need to duplicate the physics actor as well 1549 // Need to duplicate the physics actor as well
1550 if (part.PhysActor != null && userExposed) 1550 if (part.PhysActor != null && userExposed)
1551 { 1551 {
1552 PrimitiveBaseShape pbs = part.Shape; 1552 PrimitiveBaseShape pbs = part.Shape;
@@ -1562,7 +1562,7 @@ namespace OpenSim.Region.Framework.Scenes
1562 1562
1563 part.PhysActor.LocalID = part.LocalId; 1563 part.PhysActor.LocalID = part.LocalId;
1564 part.DoPhysicsPropertyUpdate(part.PhysActor.IsPhysical, true); 1564 part.DoPhysicsPropertyUpdate(part.PhysActor.IsPhysical, true);
1565 } 1565 }
1566 } 1566 }
1567 1567
1568 if (userExposed) 1568 if (userExposed)
@@ -1838,7 +1838,7 @@ namespace OpenSim.Region.Framework.Scenes
1838 SceneObjectPart newPart = null; 1838 SceneObjectPart newPart = null;
1839 1839
1840 lock (m_parts) 1840 lock (m_parts)
1841 { 1841 {
1842 newPart = part.Copy(m_scene.AllocateLocalId(), OwnerID, GroupID, m_parts.Count, userExposed); 1842 newPart = part.Copy(m_scene.AllocateLocalId(), OwnerID, GroupID, m_parts.Count, userExposed);
1843 newPart.SetParent(this); 1843 newPart.SetParent(this);
1844 m_parts.Add(newPart.UUID, newPart); 1844 m_parts.Add(newPart.UUID, newPart);
@@ -2337,7 +2337,7 @@ namespace OpenSim.Region.Framework.Scenes
2337 if (p.LinkNum > linkPart.LinkNum) 2337 if (p.LinkNum > linkPart.LinkNum)
2338 p.LinkNum--; 2338 p.LinkNum--;
2339 } 2339 }
2340 } 2340 }
2341 } 2341 }
2342 2342
2343 linkPart.ParentID = 0; 2343 linkPart.ParentID = 0;
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index 3753dcb..024bdc9 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -1010,12 +1010,12 @@ namespace OpenSim.Region.Framework.Scenes
1010 return m_mediaUrl; 1010 return m_mediaUrl;
1011 } 1011 }
1012 1012
1013 set 1013 set
1014 { 1014 {
1015 m_mediaUrl = value; 1015 m_mediaUrl = value;
1016 1016
1017 if (ParentGroup != null) 1017 if (ParentGroup != null)
1018 ParentGroup.HasGroupChanged = true; 1018 ParentGroup.HasGroupChanged = true;
1019 } 1019 }
1020 } 1020 }
1021 1021
@@ -1028,7 +1028,7 @@ namespace OpenSim.Region.Framework.Scenes
1028// m_log.DebugFormat("[SOP]: Setting CreateSelected to {0} for {1} {2}", value, Name, UUID); 1028// m_log.DebugFormat("[SOP]: Setting CreateSelected to {0} for {1} {2}", value, Name, UUID);
1029 m_createSelected = value; 1029 m_createSelected = value;
1030 } 1030 }
1031 } 1031 }
1032 1032
1033 #endregion 1033 #endregion
1034 1034
@@ -1189,7 +1189,7 @@ namespace OpenSim.Region.Framework.Scenes
1189 1189
1190 /// <summary> 1190 /// <summary>
1191 /// Property flags. See OpenMetaverse.PrimFlags 1191 /// Property flags. See OpenMetaverse.PrimFlags
1192 /// </summary> 1192 /// </summary>
1193 /// Example properties are PrimFlags.Phantom and PrimFlags.DieAtEdge 1193 /// Example properties are PrimFlags.Phantom and PrimFlags.DieAtEdge
1194 public PrimFlags Flags 1194 public PrimFlags Flags
1195 { 1195 {
@@ -1355,7 +1355,7 @@ namespace OpenSim.Region.Framework.Scenes
1355 1355
1356 /// <summary> 1356 /// <summary>
1357 /// Tell the scene presence that it should send updates for this part to its client 1357 /// Tell the scene presence that it should send updates for this part to its client
1358 /// </summary> 1358 /// </summary>
1359 public void AddFullUpdateToAvatar(ScenePresence presence) 1359 public void AddFullUpdateToAvatar(ScenePresence presence)
1360 { 1360 {
1361 presence.SceneViewer.QueuePartForUpdate(this); 1361 presence.SceneViewer.QueuePartForUpdate(this);
@@ -1414,7 +1414,7 @@ namespace OpenSim.Region.Framework.Scenes
1414 1414
1415 m_parentGroup.Scene.ForEachScenePresence(delegate(ScenePresence sp) 1415 m_parentGroup.Scene.ForEachScenePresence(delegate(ScenePresence sp)
1416 { 1416 {
1417 if(!sp.IsChildAgent) 1417 if (!sp.IsChildAgent)
1418 sp.ControllingClient.SendAttachedSoundGainChange(UUID, (float)volume); 1418 sp.ControllingClient.SendAttachedSoundGainChange(UUID, (float)volume);
1419 }); 1419 });
1420 } 1420 }
@@ -1659,7 +1659,7 @@ namespace OpenSim.Region.Framework.Scenes
1659 1659
1660// m_log.DebugFormat("[SCENE OBJECT PART]: Clone of {0} {1} finished", Name, UUID); 1660// m_log.DebugFormat("[SCENE OBJECT PART]: Clone of {0} {1} finished", Name, UUID);
1661 1661
1662 return dupe; 1662 return dupe;
1663 } 1663 }
1664 1664
1665 protected void AssetReceived(string id, Object sender, AssetBase asset) 1665 protected void AssetReceived(string id, Object sender, AssetBase asset)
@@ -1969,10 +1969,10 @@ namespace OpenSim.Region.Framework.Scenes
1969 } 1969 }
1970 1970
1971 public uint GetEffectiveObjectFlags() 1971 public uint GetEffectiveObjectFlags()
1972 { 1972 {
1973 // Commenting this section of code out since it doesn't actually do anything, as enums are handled by 1973 // Commenting this section of code out since it doesn't actually do anything, as enums are handled by
1974 // value rather than reference 1974 // value rather than reference
1975// PrimFlags f = _flags; 1975// PrimFlags f = _flags;
1976// if (m_parentGroup == null || m_parentGroup.RootPart == this) 1976// if (m_parentGroup == null || m_parentGroup.RootPart == this)
1977// f &= ~(PrimFlags.Touch | PrimFlags.Money); 1977// f &= ~(PrimFlags.Touch | PrimFlags.Money);
1978 1978
@@ -4733,7 +4733,7 @@ namespace OpenSim.Region.Framework.Scenes
4733 if (ParentGroup == null || ParentGroup.IsDeleted) 4733 if (ParentGroup == null || ParentGroup.IsDeleted)
4734 return; 4734 return;
4735 4735
4736 if (IsAttachment && ParentGroup.RootPart != this) 4736 if (IsAttachment && ParentGroup.RootPart != this)
4737 return; 4737 return;
4738 4738
4739 // Causes this thread to dig into the Client Thread Data. 4739 // Causes this thread to dig into the Client Thread Data.
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
index e45d488..53ddb5d 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
@@ -1094,7 +1094,7 @@ namespace OpenSim.Region.Framework.Scenes
1094 item.OwnerChanged = false; 1094 item.OwnerChanged = false;
1095 engine.ResumeScript(item.ItemID); 1095 engine.ResumeScript(item.ItemID);
1096 } 1096 }
1097 } 1097 }
1098 } 1098 }
1099 } 1099 }
1100 } 1100 }
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index cc9355e..177cf1e 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1287,7 +1287,7 @@ namespace OpenSim.Region.Framework.Scenes
1287 // Setting parent ID would fix this, if we knew what value 1287 // Setting parent ID would fix this, if we knew what value
1288 // to use. Or we could add a m_isSitting variable. 1288 // to use. Or we could add a m_isSitting variable.
1289 //Animator.TrySetMovementAnimation("SIT_GROUND_CONSTRAINED"); 1289 //Animator.TrySetMovementAnimation("SIT_GROUND_CONSTRAINED");
1290 SitGround = true; 1290 SitGround = true;
1291 } 1291 }
1292 1292
1293 // In the future, these values might need to go global. 1293 // In the future, these values might need to go global.
diff --git a/OpenSim/Region/Framework/Scenes/SceneViewer.cs b/OpenSim/Region/Framework/Scenes/SceneViewer.cs
index 7aa5a93..b45291f 100644
--- a/OpenSim/Region/Framework/Scenes/SceneViewer.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneViewer.cs
@@ -73,7 +73,7 @@ namespace OpenSim.Region.Framework.Scenes
73 { 73 {
74 m_pendingObjects = new Queue<SceneObjectGroup>(); 74 m_pendingObjects = new Queue<SceneObjectGroup>();
75 75
76 lock(m_pendingObjects) 76 lock (m_pendingObjects)
77 { 77 {
78 EntityBase[] entities = m_presence.Scene.Entities.GetEntities(); 78 EntityBase[] entities = m_presence.Scene.Entities.GetEntities();
79 foreach (EntityBase e in entities) 79 foreach (EntityBase e in entities)
@@ -85,7 +85,7 @@ namespace OpenSim.Region.Framework.Scenes
85 } 85 }
86 } 86 }
87 87
88 lock(m_pendingObjects) 88 lock (m_pendingObjects)
89 { 89 {
90 while (m_pendingObjects != null && m_pendingObjects.Count > 0) 90 while (m_pendingObjects != null && m_pendingObjects.Count > 0)
91 { 91 {
diff --git a/OpenSim/Region/Framework/Scenes/Tests/SceneGraphTests.cs b/OpenSim/Region/Framework/Scenes/Tests/SceneGraphTests.cs
index c9662ef..7d9a6a9 100644
--- a/OpenSim/Region/Framework/Scenes/Tests/SceneGraphTests.cs
+++ b/OpenSim/Region/Framework/Scenes/Tests/SceneGraphTests.cs
@@ -71,7 +71,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
71 Assert.That(dupeSo.Children.Count, Is.EqualTo(2)); 71 Assert.That(dupeSo.Children.Count, Is.EqualTo(2));
72 72
73 SceneObjectPart dupePart1 = dupeSo.GetLinkNumPart(1); 73 SceneObjectPart dupePart1 = dupeSo.GetLinkNumPart(1);
74 SceneObjectPart dupePart2 = dupeSo.GetLinkNumPart(2); 74 SceneObjectPart dupePart2 = dupeSo.GetLinkNumPart(2);
75 Assert.That(dupePart1.LocalId, Is.Not.EqualTo(part1.LocalId)); 75 Assert.That(dupePart1.LocalId, Is.Not.EqualTo(part1.LocalId));
76 Assert.That(dupePart2.LocalId, Is.Not.EqualTo(part2.LocalId)); 76 Assert.That(dupePart2.LocalId, Is.Not.EqualTo(part2.LocalId));
77 77
@@ -84,6 +84,6 @@ namespace OpenSim.Region.Framework.Scenes.Tests
84 Assert.That(dupePart1.PhysActor, Is.Not.Null); 84 Assert.That(dupePart1.PhysActor, Is.Not.Null);
85 Assert.That(dupePart2.PhysActor, Is.Not.Null); 85 Assert.That(dupePart2.PhysActor, Is.Not.Null);
86 */ 86 */
87 } 87 }
88 } 88 }
89} \ No newline at end of file 89} \ No newline at end of file
diff --git a/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs b/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs
index d634840..60824be 100644
--- a/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs
+++ b/OpenSim/Region/Framework/Scenes/Tests/SceneObjectLinkingTests.cs
@@ -270,7 +270,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
270 TestHelper.InMethod(); 270 TestHelper.InMethod();
271 //log4net.Config.XmlConfigurator.Configure(); 271 //log4net.Config.XmlConfigurator.Configure();
272 272
273 TestScene scene = SceneSetupHelpers.SetupScene(); 273 TestScene scene = SceneSetupHelpers.SetupScene();
274 274
275 string rootPartName = "rootpart"; 275 string rootPartName = "rootpart";
276 UUID rootPartUuid = new UUID("00000000-0000-0000-0000-000000000001"); 276 UUID rootPartUuid = new UUID("00000000-0000-0000-0000-000000000001");
@@ -282,11 +282,11 @@ namespace OpenSim.Region.Framework.Scenes.Tests
282 { Name = rootPartName, UUID = rootPartUuid }; 282 { Name = rootPartName, UUID = rootPartUuid };
283 SceneObjectPart linkPart 283 SceneObjectPart linkPart
284 = new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero) 284 = new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero)
285 { Name = linkPartName, UUID = linkPartUuid }; 285 { Name = linkPartName, UUID = linkPartUuid };
286 286
287 SceneObjectGroup sog = new SceneObjectGroup(rootPart); 287 SceneObjectGroup sog = new SceneObjectGroup(rootPart);
288 sog.AddPart(linkPart); 288 sog.AddPart(linkPart);
289 scene.AddNewSceneObject(sog, true); 289 scene.AddNewSceneObject(sog, true);
290 290
291 // In a test, we have to crank the backup handle manually. Normally this would be done by the timer invoked 291 // In a test, we have to crank the backup handle manually. Normally this would be done by the timer invoked
292 // scene backup thread. 292 // scene backup thread.
@@ -309,7 +309,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
309 TestHelper.InMethod(); 309 TestHelper.InMethod();
310 //log4net.Config.XmlConfigurator.Configure(); 310 //log4net.Config.XmlConfigurator.Configure();
311 311
312 TestScene scene = SceneSetupHelpers.SetupScene(); 312 TestScene scene = SceneSetupHelpers.SetupScene();
313 313
314 string rootPartName = "rootpart"; 314 string rootPartName = "rootpart";
315 UUID rootPartUuid = new UUID("00000000-0000-0000-0000-000000000001"); 315 UUID rootPartUuid = new UUID("00000000-0000-0000-0000-000000000001");
@@ -321,11 +321,11 @@ namespace OpenSim.Region.Framework.Scenes.Tests
321 { Name = rootPartName, UUID = rootPartUuid }; 321 { Name = rootPartName, UUID = rootPartUuid };
322 SceneObjectPart linkPart 322 SceneObjectPart linkPart
323 = new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero) 323 = new SceneObjectPart(UUID.Zero, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero)
324 { Name = linkPartName, UUID = linkPartUuid }; 324 { Name = linkPartName, UUID = linkPartUuid };
325 325
326 SceneObjectGroup sog = new SceneObjectGroup(rootPart); 326 SceneObjectGroup sog = new SceneObjectGroup(rootPart);
327 sog.AddPart(linkPart); 327 sog.AddPart(linkPart);
328 scene.AddNewSceneObject(sog, true); 328 scene.AddNewSceneObject(sog, true);
329 329
330 // In a test, we have to crank the backup handle manually. Normally this would be done by the timer invoked 330 // In a test, we have to crank the backup handle manually. Normally this would be done by the timer invoked
331 // scene backup thread. 331 // scene backup thread.
@@ -333,7 +333,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests
333 333
334 // These changes should occur immediately without waiting for a backup pass 334 // These changes should occur immediately without waiting for a backup pass
335 SceneObjectGroup groupToDelete = sog.DelinkFromGroup(linkPart, false); 335 SceneObjectGroup groupToDelete = sog.DelinkFromGroup(linkPart, false);
336 scene.DeleteSceneObject(groupToDelete, false); 336 scene.DeleteSceneObject(groupToDelete, false);
337 337
338 List<SceneObjectGroup> storedObjects = scene.SimulationDataService.LoadObjects(scene.RegionInfo.RegionID); 338 List<SceneObjectGroup> storedObjects = scene.SimulationDataService.LoadObjects(scene.RegionInfo.RegionID);
339 339
diff --git a/OpenSim/Region/Framework/Scenes/Tests/TaskInventoryTests.cs b/OpenSim/Region/Framework/Scenes/Tests/TaskInventoryTests.cs
index 5e491c2..fe59d4f 100644
--- a/OpenSim/Region/Framework/Scenes/Tests/TaskInventoryTests.cs
+++ b/OpenSim/Region/Framework/Scenes/Tests/TaskInventoryTests.cs
@@ -59,8 +59,8 @@ namespace OpenSim.Region.Framework.Tests
59 string userFirstName = "Jock"; 59 string userFirstName = "Jock";
60 string userLastName = "Stirrup"; 60 string userLastName = "Stirrup";
61 string userPassword = "troll"; 61 string userPassword = "troll";
62 UUID userId = UUID.Parse("00000000-0000-0000-0000-000000000020"); 62 UUID userId = UUID.Parse("00000000-0000-0000-0000-000000000020");
63 return UserProfileTestUtils.CreateUserWithInventory(scene, userFirstName, userLastName, userId, userPassword); 63 return UserProfileTestUtils.CreateUserWithInventory(scene, userFirstName, userLastName, userId, userPassword);
64 } 64 }
65 65
66 protected SceneObjectGroup CreateSO1(Scene scene, UUID ownerId) 66 protected SceneObjectGroup CreateSO1(Scene scene, UUID ownerId)
@@ -70,7 +70,7 @@ namespace OpenSim.Region.Framework.Tests
70 SceneObjectPart part1 70 SceneObjectPart part1
71 = new SceneObjectPart(ownerId, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero) 71 = new SceneObjectPart(ownerId, PrimitiveBaseShape.Default, Vector3.Zero, Quaternion.Identity, Vector3.Zero)
72 { Name = part1Name, UUID = part1Id }; 72 { Name = part1Name, UUID = part1Id };
73 return new SceneObjectGroup(part1); 73 return new SceneObjectGroup(part1);
74 } 74 }
75 75
76 protected TaskInventoryItem CreateSOItem1(Scene scene, SceneObjectPart part) 76 protected TaskInventoryItem CreateSOItem1(Scene scene, SceneObjectPart part)
@@ -79,7 +79,7 @@ namespace OpenSim.Region.Framework.Tests
79 nc.BodyText = "Hello World!"; 79 nc.BodyText = "Hello World!";
80 nc.Encode(); 80 nc.Encode();
81 UUID ncAssetUuid = new UUID("00000000-0000-0000-1000-000000000000"); 81 UUID ncAssetUuid = new UUID("00000000-0000-0000-1000-000000000000");
82 UUID ncItemUuid = new UUID("00000000-0000-0000-1100-000000000000"); 82 UUID ncItemUuid = new UUID("00000000-0000-0000-1100-000000000000");
83 AssetBase ncAsset 83 AssetBase ncAsset
84 = AssetHelpers.CreateAsset(ncAssetUuid, AssetType.Notecard, nc.AssetData, UUID.Zero); 84 = AssetHelpers.CreateAsset(ncAssetUuid, AssetType.Notecard, nc.AssetData, UUID.Zero);
85 scene.AssetService.Store(ncAsset); 85 scene.AssetService.Store(ncAsset);
@@ -114,9 +114,9 @@ namespace OpenSim.Region.Framework.Tests
114 scene.MoveTaskInventoryItem(user1.PrincipalID, folder.ID, sop1, sopItem1.ItemID); 114 scene.MoveTaskInventoryItem(user1.PrincipalID, folder.ID, sop1, sopItem1.ItemID);
115 115
116 InventoryItemBase ncUserItem 116 InventoryItemBase ncUserItem
117 = InventoryArchiveUtils.FindItemByPath(scene.InventoryService, user1.PrincipalID, "Objects/ncItem"); 117 = InventoryArchiveUtils.FindItemByPath(scene.InventoryService, user1.PrincipalID, "Objects/ncItem");
118 Assert.That(ncUserItem, Is.Not.Null, "Objects/ncItem was not found"); 118 Assert.That(ncUserItem, Is.Not.Null, "Objects/ncItem was not found");
119 } 119 }
120 120
121 /// <summary> 121 /// <summary>
122 /// Test MoveTaskInventoryItem where the item has no parent folder assigned. 122 /// Test MoveTaskInventoryItem where the item has no parent folder assigned.
@@ -138,7 +138,7 @@ namespace OpenSim.Region.Framework.Tests
138 scene.MoveTaskInventoryItem(user1.PrincipalID, UUID.Zero, sop1, sopItem1.ItemID); 138 scene.MoveTaskInventoryItem(user1.PrincipalID, UUID.Zero, sop1, sopItem1.ItemID);
139 139
140 InventoryItemBase ncUserItem 140 InventoryItemBase ncUserItem
141 = InventoryArchiveUtils.FindItemByPath(scene.InventoryService, user1.PrincipalID, "Notecards/ncItem"); 141 = InventoryArchiveUtils.FindItemByPath(scene.InventoryService, user1.PrincipalID, "Notecards/ncItem");
142 Assert.That(ncUserItem, Is.Not.Null, "Notecards/ncItem was not found"); 142 Assert.That(ncUserItem, Is.Not.Null, "Notecards/ncItem was not found");
143 } 143 }
144 } 144 }
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
index 2969503..6f044e0 100644
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
@@ -962,7 +962,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
962 if ((groupInfo == null) || (account == null)) 962 if ((groupInfo == null) || (account == null))
963 { 963 {
964 return; 964 return;
965 } 965 }
966 966
967 // Send Message to Ejectee 967 // Send Message to Ejectee
968 GridInstantMessage msg = new GridInstantMessage(); 968 GridInstantMessage msg = new GridInstantMessage();
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs
index 9363205..0d265f2 100644
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/SimianGroupsServicesConnectorModule.cs
@@ -91,11 +91,11 @@ using OpenSim.Services.Interfaces;
91 * + RoleID 91 * + RoleID
92 * 92 *
93 * GroupID -> GroupNotice -> NoticeID 93 * GroupID -> GroupNotice -> NoticeID
94 * + TimeStamp [uint] 94 * + TimeStamp [uint]
95 * + FromName [string] 95 * + FromName [string]
96 * + Subject [string] 96 * + Subject [string]
97 * + Message [string] 97 * + Message [string]
98 * + BinaryBucket [byte[]] 98 * + BinaryBucket [byte[]]
99 * 99 *
100 * */ 100 * */
101 101
@@ -309,7 +309,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
309 GroupInfoMap["OwnerRoleID"] = OSD.FromUUID(OwnerRoleID); 309 GroupInfoMap["OwnerRoleID"] = OSD.FromUUID(OwnerRoleID);
310 GroupInfoMap["OwnersPowers"] = OSD.FromULong((ulong)m_DefaultOwnerPowers); 310 GroupInfoMap["OwnersPowers"] = OSD.FromULong((ulong)m_DefaultOwnerPowers);
311 311
312 if(SimianAddGeneric(GroupID, "Group", name, GroupInfoMap)) 312 if (SimianAddGeneric(GroupID, "Group", name, GroupInfoMap))
313 { 313 {
314 AddGroupRole(requestingAgentID, GroupID, UUID.Zero, "Everyone", "Members of " + name, "Member of " + name, (ulong)m_DefaultEveryonePowers); 314 AddGroupRole(requestingAgentID, GroupID, UUID.Zero, "Everyone", "Members of " + name, "Member of " + name, (ulong)m_DefaultEveryonePowers);
315 AddGroupRole(requestingAgentID, GroupID, OwnerRoleID, "Owners", "Owners of " + name, "Owner of " + name, (ulong)m_DefaultOwnerPowers); 315 AddGroupRole(requestingAgentID, GroupID, OwnerRoleID, "Owners", "Owners of " + name, "Owner of " + name, (ulong)m_DefaultOwnerPowers);
@@ -334,7 +334,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
334 334
335 string GroupName; 335 string GroupName;
336 OSDMap GroupInfoMap; 336 OSDMap GroupInfoMap;
337 if( SimianGetFirstGenericEntry(groupID, "GroupInfo", out GroupName, out GroupInfoMap) ) 337 if (SimianGetFirstGenericEntry(groupID, "GroupInfo", out GroupName, out GroupInfoMap))
338 { 338 {
339 GroupInfoMap["Charter"] = OSD.FromString(charter); 339 GroupInfoMap["Charter"] = OSD.FromString(charter);
340 GroupInfoMap["ShowInList"] = OSD.FromBoolean(showInList); 340 GroupInfoMap["ShowInList"] = OSD.FromBoolean(showInList);
@@ -379,7 +379,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
379 string GroupRoleMemberType = "GroupRole" + groupID.ToString(); 379 string GroupRoleMemberType = "GroupRole" + groupID.ToString();
380 if (SimianGetGenericEntries(GroupRoleMemberType, roleID.ToString(), out GroupRoleMembers)) 380 if (SimianGetGenericEntries(GroupRoleMemberType, roleID.ToString(), out GroupRoleMembers))
381 { 381 {
382 foreach(UUID UserID in GroupRoleMembers.Keys) 382 foreach (UUID UserID in GroupRoleMembers.Keys)
383 { 383 {
384 EnsureRoleNotSelectedByMember(groupID, roleID, UserID); 384 EnsureRoleNotSelectedByMember(groupID, roleID, UserID);
385 385
@@ -724,7 +724,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
724 } 724 }
725 725
726 OSDMap UserGroupMemberInfo; 726 OSDMap UserGroupMemberInfo;
727 if( SimianGetGenericEntry(agentID, "GroupMember", groupID.ToString(), out UserGroupMemberInfo) ) 727 if (SimianGetGenericEntry(agentID, "GroupMember", groupID.ToString(), out UserGroupMemberInfo))
728 { 728 {
729 data.AcceptNotices = UserGroupMemberInfo["AcceptNotices"].AsBoolean(); 729 data.AcceptNotices = UserGroupMemberInfo["AcceptNotices"].AsBoolean();
730 data.Contribution = UserGroupMemberInfo["Contribution"].AsInteger(); 730 data.Contribution = UserGroupMemberInfo["Contribution"].AsInteger();
@@ -736,7 +736,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
736 // 736 //
737 737
738 OSDMap GroupRoleInfo; 738 OSDMap GroupRoleInfo;
739 if( SimianGetGenericEntry(groupID, "GroupRole", data.ActiveRole.ToString(), out GroupRoleInfo) ) 739 if (SimianGetGenericEntry(groupID, "GroupRole", data.ActiveRole.ToString(), out GroupRoleInfo))
740 { 740 {
741 data.GroupTitle = GroupRoleInfo["Title"].AsString(); 741 data.GroupTitle = GroupRoleInfo["Title"].AsString();
742 data.GroupPowers = GroupRoleInfo["Powers"].AsULong(); 742 data.GroupPowers = GroupRoleInfo["Powers"].AsULong();
@@ -748,7 +748,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
748 // 748 //
749 OSDMap GroupInfo; 749 OSDMap GroupInfo;
750 string GroupName; 750 string GroupName;
751 if( SimianGetFirstGenericEntry(groupID, "Group", out GroupName, out GroupInfo) ) 751 if (SimianGetFirstGenericEntry(groupID, "Group", out GroupName, out GroupInfo))
752 { 752 {
753 data.GroupID = groupID; 753 data.GroupID = groupID;
754 data.AllowPublish = GroupInfo["AllowPublish"].AsBoolean(); 754 data.AllowPublish = GroupInfo["AllowPublish"].AsBoolean();
@@ -928,12 +928,12 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
928 Dictionary<string, OSDMap> GroupRoles; 928 Dictionary<string, OSDMap> GroupRoles;
929 if (SimianGetGenericEntries(groupID, "GroupRole", out GroupRoles)) 929 if (SimianGetGenericEntries(groupID, "GroupRole", out GroupRoles))
930 { 930 {
931 foreach( KeyValuePair<string, OSDMap> Role in GroupRoles ) 931 foreach (KeyValuePair<string, OSDMap> Role in GroupRoles)
932 { 932 {
933 Dictionary<UUID, OSDMap> GroupRoleMembers; 933 Dictionary<UUID, OSDMap> GroupRoleMembers;
934 if( SimianGetGenericEntries("GroupRole"+groupID.ToString(), Role.Key, out GroupRoleMembers) ) 934 if (SimianGetGenericEntries("GroupRole"+groupID.ToString(), Role.Key, out GroupRoleMembers))
935 { 935 {
936 foreach( KeyValuePair<UUID, OSDMap> GroupRoleMember in GroupRoleMembers ) 936 foreach (KeyValuePair<UUID, OSDMap> GroupRoleMember in GroupRoleMembers)
937 { 937 {
938 GroupRoleMembersData data = new GroupRoleMembersData(); 938 GroupRoleMembersData data = new GroupRoleMembersData();
939 939
@@ -1264,7 +1264,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
1264 if (m_debugEnabled) m_log.InfoFormat("[SIMIAN-GROUPS-CONNECTOR] Generics Result {0}", entryMap["Value"].AsString()); 1264 if (m_debugEnabled) m_log.InfoFormat("[SIMIAN-GROUPS-CONNECTOR] Generics Result {0}", entryMap["Value"].AsString());
1265 maps.Add(entryMap["Key"].AsString(), (OSDMap)OSDParser.DeserializeJson(entryMap["Value"].AsString())); 1265 maps.Add(entryMap["Key"].AsString(), (OSDMap)OSDParser.DeserializeJson(entryMap["Value"].AsString()));
1266 } 1266 }
1267 if(maps.Count == 0) 1267 if (maps.Count == 0)
1268 { 1268 {
1269 if (m_debugEnabled) m_log.InfoFormat("[SIMIAN-GROUPS-CONNECTOR] No Generics Results"); 1269 if (m_debugEnabled) m_log.InfoFormat("[SIMIAN-GROUPS-CONNECTOR] No Generics Results");
1270 } 1270 }
@@ -1352,17 +1352,14 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
1352 } 1352 }
1353 1353
1354 // Check if this is an update or a request 1354 // Check if this is an update or a request
1355 if ( requestArgs["RequestMethod"] == "RemoveGeneric" 1355 if (requestArgs["RequestMethod"] == "RemoveGeneric"
1356 || requestArgs["RequestMethod"] == "AddGeneric" 1356 || requestArgs["RequestMethod"] == "AddGeneric")
1357 )
1358
1359 { 1357 {
1360 // Any and all updates cause the cache to clear 1358 // Any and all updates cause the cache to clear
1361 m_memoryCache.Clear(); 1359 m_memoryCache.Clear();
1362 1360
1363 // Send update to server, return the response without caching it 1361 // Send update to server, return the response without caching it
1364 return WebUtil.PostToService(m_groupsServerURI, requestArgs); 1362 return WebUtil.PostToService(m_groupsServerURI, requestArgs);
1365
1366 } 1363 }
1367 1364
1368 // If we're not doing an update, we must be requesting data 1365 // If we're not doing an update, we must be requesting data
@@ -1372,7 +1369,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
1372 OSDMap response = null; 1369 OSDMap response = null;
1373 if (!m_memoryCache.TryGetValue(CacheKey, out response)) 1370 if (!m_memoryCache.TryGetValue(CacheKey, out response))
1374 { 1371 {
1375 // if it wasn't in the cache, pass the request to the Simian Grid Services 1372 // if it wasn't in the cache, pass the request to the Simian Grid Services
1376 response = WebUtil.PostToService(m_groupsServerURI, requestArgs); 1373 response = WebUtil.PostToService(m_groupsServerURI, requestArgs);
1377 1374
1378 // and cache the response 1375 // and cache the response
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs
index 79b9a16..a88c5e2 100644
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs
@@ -960,7 +960,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
960 960
961 } 961 }
962 962
963 if( resp == null ) 963 if (resp == null)
964 { 964 {
965 string UserService; 965 string UserService;
966 UUID SessionID; 966 UUID SessionID;
@@ -1065,7 +1065,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
1065 1065
1066 /// <summary> 1066 /// <summary>
1067 /// Group Request Tokens are an attempt to allow the groups service to authenticate 1067 /// Group Request Tokens are an attempt to allow the groups service to authenticate
1068 /// requests. 1068 /// requests.
1069 /// TODO: This broke after the big grid refactor, either find a better way, or discard this 1069 /// TODO: This broke after the big grid refactor, either find a better way, or discard this
1070 /// </summary> 1070 /// </summary>
1071 /// <param name="client"></param> 1071 /// <param name="client"></param>
diff --git a/OpenSim/Region/OptionalModules/ContentManagementSystem/MetaEntity.cs b/OpenSim/Region/OptionalModules/ContentManagementSystem/MetaEntity.cs
index 796f437..d7838c5 100644
--- a/OpenSim/Region/OptionalModules/ContentManagementSystem/MetaEntity.cs
+++ b/OpenSim/Region/OptionalModules/ContentManagementSystem/MetaEntity.cs
@@ -161,7 +161,7 @@ namespace OpenSim.Region.OptionalModules.ContentManagement
161 161
162 //finalize 162 //finalize
163 m_Entity.RootPart.PhysActor = null; 163 m_Entity.RootPart.PhysActor = null;
164 m_Entity.Children = parts; 164 m_Entity.Children = parts;
165 } 165 }
166 } 166 }
167 167
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs
index c439e3e..59ad9d8 100644
--- a/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs
+++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/SOPObject.cs
@@ -432,7 +432,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
432 return; 432 return;
433 } 433 }
434 434
435 foreach(string button in buttons) 435 foreach (string button in buttons)
436 { 436 {
437 if (button == String.Empty) 437 if (button == String.Empty)
438 { 438 {
@@ -448,7 +448,7 @@ namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
448 448
449 dm.SendDialogToUser( 449 dm.SendDialogToUser(
450 avatar, GetSOP().Name, GetSOP().UUID, GetSOP().OwnerID, 450 avatar, GetSOP().Name, GetSOP().UUID, GetSOP().OwnerID,
451 message, new UUID("00000000-0000-2222-3333-100000001000"), chat_channel, buttons); 451 message, new UUID("00000000-0000-2222-3333-100000001000"), chat_channel, buttons);
452 452
453 } 453 }
454 454
diff --git a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs
index 61cbb90..cc51c3b 100644
--- a/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs
+++ b/OpenSim/Region/OptionalModules/World/MoneyModule/SampleMoneyModule.cs
@@ -824,5 +824,5 @@ namespace OpenSim.Region.OptionalModules.World.MoneyModule
824 RegionMoneyRequest = 1, 824 RegionMoneyRequest = 1,
825 Gift = 2, 825 Gift = 2,
826 Purchase = 3 826 Purchase = 3
827 } 827 }
828} \ No newline at end of file 828} \ No newline at end of file
diff --git a/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs b/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs
index a0d6197..f424e7f 100644
--- a/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs
+++ b/OpenSim/Region/RegionCombinerModule/RegionCombinerIndividualEventForwarder.cs
@@ -49,7 +49,7 @@ namespace OpenSim.Region.RegionCombinerModule
49 public void ClientConnect(IClientAPI client) 49 public void ClientConnect(IClientAPI client)
50 { 50 {
51 m_virtScene.UnSubscribeToClientPrimEvents(client); 51 m_virtScene.UnSubscribeToClientPrimEvents(client);
52 m_virtScene.UnSubscribeToClientPrimRezEvents(client); 52 m_virtScene.UnSubscribeToClientPrimRezEvents(client);
53 m_virtScene.UnSubscribeToClientInventoryEvents(client); 53 m_virtScene.UnSubscribeToClientInventoryEvents(client);
54 ((AttachmentsModule)m_virtScene.AttachmentsModule).UnsubscribeFromClientEvents(client); 54 ((AttachmentsModule)m_virtScene.AttachmentsModule).UnsubscribeFromClientEvents(client);
55 //m_virtScene.UnSubscribeToClientTeleportEvents(client); 55 //m_virtScene.UnSubscribeToClientTeleportEvents(client);
@@ -66,7 +66,7 @@ namespace OpenSim.Region.RegionCombinerModule
66 client.OnRezObject += LocalRezObject; 66 client.OnRezObject += LocalRezObject;
67 67
68 m_rootScene.SubscribeToClientInventoryEvents(client); 68 m_rootScene.SubscribeToClientInventoryEvents(client);
69 ((AttachmentsModule)m_rootScene.AttachmentsModule).SubscribeToClientEvents(client); 69 ((AttachmentsModule)m_rootScene.AttachmentsModule).SubscribeToClientEvents(client);
70 //m_rootScene.SubscribeToClientTeleportEvents(client); 70 //m_rootScene.SubscribeToClientTeleportEvents(client);
71 m_rootScene.SubscribeToClientScriptEvents(client); 71 m_rootScene.SubscribeToClientScriptEvents(client);
72 72
diff --git a/OpenSim/Region/RegionCombinerModule/RegionCombinerLargeLandChannel.cs b/OpenSim/Region/RegionCombinerModule/RegionCombinerLargeLandChannel.cs
index 33ff707..be5411a 100644
--- a/OpenSim/Region/RegionCombinerModule/RegionCombinerLargeLandChannel.cs
+++ b/OpenSim/Region/RegionCombinerModule/RegionCombinerLargeLandChannel.cs
@@ -118,7 +118,7 @@ public class RegionCombinerLargeLandChannel : ILandChannel
118 return regionData.RegionScene.LandChannel.GetLandObject(x - offsetX, y - offsetY); 118 return regionData.RegionScene.LandChannel.GetLandObject(x - offsetX, y - offsetY);
119 } 119 }
120 } 120 }
121 121
122 ILandObject obj = new LandObject(UUID.Zero, false, RegData.RegionScene); 122 ILandObject obj = new LandObject(UUID.Zero, false, RegData.RegionScene);
123 obj.LandData.Name = "NO LAND"; 123 obj.LandData.Name = "NO LAND";
124 return obj; 124 return obj;
@@ -142,14 +142,14 @@ public class RegionCombinerLargeLandChannel : ILandChannel
142 142
143 public void Join(int start_x, int start_y, int end_x, int end_y, UUID attempting_user_id) 143 public void Join(int start_x, int start_y, int end_x, int end_y, UUID attempting_user_id)
144 { 144 {
145 RootRegionLandChannel.Join(start_x, start_y, end_x, end_y, attempting_user_id); 145 RootRegionLandChannel.Join(start_x, start_y, end_x, end_y, attempting_user_id);
146 } 146 }
147 147
148 public void Subdivide(int start_x, int start_y, int end_x, int end_y, UUID attempting_user_id) 148 public void Subdivide(int start_x, int start_y, int end_x, int end_y, UUID attempting_user_id)
149 { 149 {
150 RootRegionLandChannel.Subdivide(start_x, start_y, end_x, end_y, attempting_user_id); 150 RootRegionLandChannel.Subdivide(start_x, start_y, end_x, end_y, attempting_user_id);
151 } 151 }
152 152
153 public void ReturnObjectsInParcel(int localID, uint returnType, UUID[] agentIDs, UUID[] taskIDs, IClientAPI remoteClient) 153 public void ReturnObjectsInParcel(int localID, uint returnType, UUID[] agentIDs, UUID[] taskIDs, IClientAPI remoteClient)
154 { 154 {
155 RootRegionLandChannel.ReturnObjectsInParcel(localID, returnType, agentIDs, taskIDs, remoteClient); 155 RootRegionLandChannel.ReturnObjectsInParcel(localID, returnType, agentIDs, taskIDs, remoteClient);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index a9c5d10..0692fdb 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -7977,7 +7977,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7977 res.Add(new LSL_Integer((int)me.ControlPermissions)); 7977 res.Add(new LSL_Integer((int)me.ControlPermissions));
7978 break; 7978 break;
7979 } 7979 }
7980 } 7980 }
7981 7981
7982 return res; 7982 return res;
7983 } 7983 }
@@ -7993,7 +7993,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7993 if (face < 0 || face > m_host.GetNumberOfSides() - 1) 7993 if (face < 0 || face > m_host.GetNumberOfSides() - 1)
7994 return ScriptBaseClass.LSL_STATUS_OK; 7994 return ScriptBaseClass.LSL_STATUS_OK;
7995 7995
7996 return SetPrimMediaParams(face, rules); 7996 return SetPrimMediaParams(face, rules);
7997 } 7997 }
7998 7998
7999 private LSL_Integer SetPrimMediaParams(int face, LSL_List rules) 7999 private LSL_Integer SetPrimMediaParams(int face, LSL_List rules)
@@ -8082,7 +8082,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
8082 me.ControlPermissions = (MediaPermission)(byte)(int)rules.GetLSLIntegerItem(i++); 8082 me.ControlPermissions = (MediaPermission)(byte)(int)rules.GetLSLIntegerItem(i++);
8083 break; 8083 break;
8084 } 8084 }
8085 } 8085 }
8086 8086
8087 module.SetMediaEntry(m_host, face, me); 8087 module.SetMediaEntry(m_host, face, me);
8088 8088
@@ -8102,7 +8102,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
8102 8102
8103 IMoapModule module = m_ScriptEngine.World.RequestModuleInterface<IMoapModule>(); 8103 IMoapModule module = m_ScriptEngine.World.RequestModuleInterface<IMoapModule>();
8104 if (null == module) 8104 if (null == module)
8105 throw new Exception("Media on a prim functions not available"); 8105 throw new Exception("Media on a prim functions not available");
8106 8106
8107 module.ClearMediaEntry(m_host, face); 8107 module.ClearMediaEntry(m_host, face);
8108 8108
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index a529a94..477c52d 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -1190,7 +1190,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1190 1190
1191 World.LandChannel.Join(startx,starty,endx,endy,m_host.OwnerID); 1191 World.LandChannel.Join(startx,starty,endx,endy,m_host.OwnerID);
1192 } 1192 }
1193 1193
1194 public void osParcelSubdivide(LSL_Vector pos1, LSL_Vector pos2) 1194 public void osParcelSubdivide(LSL_Vector pos1, LSL_Vector pos2)
1195 { 1195 {
1196 CheckThreatLevel(ThreatLevel.High, "osParcelSubdivide"); 1196 CheckThreatLevel(ThreatLevel.High, "osParcelSubdivide");
@@ -1213,7 +1213,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1213 // can modify it 1213 // can modify it
1214 1214
1215 ILandObject startLandObject = World.LandChannel.GetLandObject((int)pos.x, (int)pos.y); 1215 ILandObject startLandObject = World.LandChannel.GetLandObject((int)pos.x, (int)pos.y);
1216 if (startLandObject == null) 1216 if (startLandObject == null)
1217 { 1217 {
1218 OSSLShoutError("There is no land at that location"); 1218 OSSLShoutError("There is no land at that location");
1219 return; 1219 return;
@@ -1230,7 +1230,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1230 UUID uuid; 1230 UUID uuid;
1231 1231
1232 // Process the rules, not sure what the impact would be of changing owner or group 1232 // Process the rules, not sure what the impact would be of changing owner or group
1233 for (int idx = 0; idx < rules.Length; ) 1233 for (int idx = 0; idx < rules.Length;)
1234 { 1234 {
1235 int code = rules.GetLSLIntegerItem(idx++); 1235 int code = rules.GetLSLIntegerItem(idx++);
1236 string arg = rules.GetLSLStringItem(idx++); 1236 string arg = rules.GetLSLStringItem(idx++);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs
index 2b67e84..fefbb35 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs
@@ -416,7 +416,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Plugins
416 List<SensedEntity> sensedEntities = new List<SensedEntity>(); 416 List<SensedEntity> sensedEntities = new List<SensedEntity>();
417 417
418 // If nobody about quit fast 418 // If nobody about quit fast
419 if(m_CmdManager.m_ScriptEngine.World.GetRootAgentCount() == 0) 419 if (m_CmdManager.m_ScriptEngine.World.GetRootAgentCount() == 0)
420 return sensedEntities; 420 return sensedEntities;
421 421
422 SceneObjectPart SensePoint = ts.host; 422 SceneObjectPart SensePoint = ts.host;
@@ -485,7 +485,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Plugins
485 { 485 {
486 ScenePresence sp; 486 ScenePresence sp;
487 // Try direct lookup by UUID 487 // Try direct lookup by UUID
488 if(!m_CmdManager.m_ScriptEngine.World.TryGetScenePresence(ts.keyID, out sp)) 488 if (!m_CmdManager.m_ScriptEngine.World.TryGetScenePresence(ts.keyID, out sp))
489 return sensedEntities; 489 return sensedEntities;
490 senseEntity(sp); 490 senseEntity(sp);
491 } 491 }
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
index 8102acd..427d4e5 100644
--- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
@@ -564,7 +564,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine
564 bool postOnRez = (bool)p[4]; 564 bool postOnRez = (bool)p[4];
565 StateSource stateSource = (StateSource)p[5]; 565 StateSource stateSource = (StateSource)p[5];
566 566
567 lock(m_CompileDict) 567 lock (m_CompileDict)
568 { 568 {
569 if (!m_CompileDict.ContainsKey(itemID)) 569 if (!m_CompileDict.ContainsKey(itemID))
570 return false; 570 return false;