diff options
6 files changed, 47 insertions, 15 deletions
diff --git a/OpenSim/Framework/RegionInfo.cs b/OpenSim/Framework/RegionInfo.cs index c531e8a..7a3e67f 100644 --- a/OpenSim/Framework/RegionInfo.cs +++ b/OpenSim/Framework/RegionInfo.cs | |||
@@ -627,7 +627,6 @@ namespace OpenSim.Framework | |||
627 | 627 | ||
628 | foreach (String s in allKeys) | 628 | foreach (String s in allKeys) |
629 | { | 629 | { |
630 | string val = config.GetString(s); | ||
631 | SetOtherSetting(s, config.GetString(s)); | 630 | SetOtherSetting(s, config.GetString(s)); |
632 | } | 631 | } |
633 | } | 632 | } |
diff --git a/OpenSim/Framework/Util.cs b/OpenSim/Framework/Util.cs index fae6802..dd30c2f 100644 --- a/OpenSim/Framework/Util.cs +++ b/OpenSim/Framework/Util.cs | |||
@@ -1676,13 +1676,14 @@ namespace OpenSim.Framework | |||
1676 | /// </summary> | 1676 | /// </summary> |
1677 | public static void PrintCallStack() | 1677 | public static void PrintCallStack() |
1678 | { | 1678 | { |
1679 | StackTrace stackTrace = new StackTrace(); // get call stack | 1679 | StackTrace stackTrace = new StackTrace(true); // get call stack |
1680 | StackFrame[] stackFrames = stackTrace.GetFrames(); // get method calls (frames) | 1680 | StackFrame[] stackFrames = stackTrace.GetFrames(); // get method calls (frames) |
1681 | 1681 | ||
1682 | // write call stack method names | 1682 | // write call stack method names |
1683 | foreach (StackFrame stackFrame in stackFrames) | 1683 | foreach (StackFrame stackFrame in stackFrames) |
1684 | { | 1684 | { |
1685 | m_log.Debug(stackFrame.GetMethod().DeclaringType + "." + stackFrame.GetMethod().Name); // write method name | 1685 | MethodBase mb = stackFrame.GetMethod(); |
1686 | m_log.DebugFormat("{0}.{1}:{2}", mb.DeclaringType, mb.Name, stackFrame.GetFileLineNumber()); // write method name | ||
1686 | } | 1687 | } |
1687 | } | 1688 | } |
1688 | 1689 | ||
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index c20f7b2..8ed250d 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -7689,6 +7689,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
7689 | } | 7689 | } |
7690 | } | 7690 | } |
7691 | } | 7691 | } |
7692 | else | ||
7693 | if (transfer.TransferInfo.SourceType == (int)SourceType.SimEstate) | ||
7694 | { | ||
7695 | //TransferRequestPacket does not include covenant uuid? | ||
7696 | //get scene covenant uuid | ||
7697 | taskID = m_scene.RegionInfo.RegionSettings.Covenant; | ||
7698 | } | ||
7692 | 7699 | ||
7693 | MakeAssetRequest(transfer, taskID); | 7700 | MakeAssetRequest(transfer, taskID); |
7694 | 7701 | ||
@@ -12113,6 +12120,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
12113 | { | 12120 | { |
12114 | requestID = new UUID(transferRequest.TransferInfo.Params, 80); | 12121 | requestID = new UUID(transferRequest.TransferInfo.Params, 80); |
12115 | } | 12122 | } |
12123 | else if (transferRequest.TransferInfo.SourceType == (int)SourceType.SimEstate) | ||
12124 | { | ||
12125 | requestID = taskID; | ||
12126 | } | ||
12127 | |||
12116 | 12128 | ||
12117 | // m_log.DebugFormat("[CLIENT]: {0} requesting asset {1}", Name, requestID); | 12129 | // m_log.DebugFormat("[CLIENT]: {0} requesting asset {1}", Name, requestID); |
12118 | 12130 | ||
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs index a47bc9a..82a035b 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | |||
@@ -560,12 +560,20 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
560 | return null; | 560 | return null; |
561 | 561 | ||
562 | userID = remoteClient.AgentId; | 562 | userID = remoteClient.AgentId; |
563 | |||
564 | // m_log.DebugFormat( | ||
565 | // "[INVENTORY ACCESS MODULE]: Target of {0} in CreateItemForObject() is {1} {2}", | ||
566 | // action, remoteClient.Name, userID); | ||
563 | } | 567 | } |
564 | else | 568 | else |
565 | { | 569 | { |
566 | // All returns / deletes go to the object owner | 570 | // All returns / deletes go to the object owner |
567 | // | 571 | // |
568 | userID = so.RootPart.OwnerID; | 572 | userID = so.RootPart.OwnerID; |
573 | |||
574 | // m_log.DebugFormat( | ||
575 | // "[INVENTORY ACCESS MODULE]: Target of {0} in CreateItemForObject() is object owner {1}", | ||
576 | // action, userID); | ||
569 | } | 577 | } |
570 | 578 | ||
571 | if (userID == UUID.Zero) // Can't proceed | 579 | if (userID == UUID.Zero) // Can't proceed |
@@ -651,11 +659,11 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
651 | } | 659 | } |
652 | 660 | ||
653 | // Override and put into where it came from, if it came | 661 | // Override and put into where it came from, if it came |
654 | // from anywhere in inventory | 662 | // from anywhere in inventory and the owner is taking it back. |
655 | // | 663 | // |
656 | if (action == DeRezAction.Take || action == DeRezAction.TakeCopy) | 664 | if (action == DeRezAction.Take || action == DeRezAction.TakeCopy) |
657 | { | 665 | { |
658 | if (so.RootPart.FromFolderID != UUID.Zero) | 666 | if (so.RootPart.FromFolderID != UUID.Zero && userID == remoteClient.AgentId) |
659 | { | 667 | { |
660 | InventoryFolderBase f = new InventoryFolderBase(so.RootPart.FromFolderID, userID); | 668 | InventoryFolderBase f = new InventoryFolderBase(so.RootPart.FromFolderID, userID); |
661 | if (f != null) | 669 | if (f != null) |
diff --git a/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs b/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs index 5dfd3e0..f678d07 100644 --- a/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs +++ b/OpenSim/Region/Framework/Scenes/AsyncSceneObjectGroupDeleter.cs | |||
@@ -148,7 +148,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
148 | x = m_inventoryDeletes.Dequeue(); | 148 | x = m_inventoryDeletes.Dequeue(); |
149 | 149 | ||
150 | m_log.DebugFormat( | 150 | m_log.DebugFormat( |
151 | "[ASYNC DELETER]: Sending object to user's inventory, action {1}, count {2}, {0} item(s) remaining.", left, x.action, x.objectGroups.Count); | 151 | "[ASYNC DELETER]: Sending object to user's inventory, action {1}, count {2}, {0} item(s) remaining.", |
152 | left, x.action, x.objectGroups.Count); | ||
152 | 153 | ||
153 | try | 154 | try |
154 | { | 155 | { |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs index 2a0ce44..5c200d6 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs | |||
@@ -450,17 +450,28 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Plugins | |||
450 | Vector3 toRegionPos; | 450 | Vector3 toRegionPos; |
451 | double dis; | 451 | double dis; |
452 | 452 | ||
453 | Action<ScenePresence> senseEntity = new Action<ScenePresence>(delegate(ScenePresence presence) | 453 | Action<ScenePresence> senseEntity = new Action<ScenePresence>(presence => |
454 | { | 454 | { |
455 | if ((ts.type & NPC) == 0 | 455 | if ((ts.type & NPC) == 0 && presence.PresenceType == PresenceType.Npc) |
456 | && presence.PresenceType == PresenceType.Npc | 456 | { |
457 | && !npcModule.GetNPC(presence.UUID, presence.Scene).SenseAsAgent) | 457 | INPC npcData = npcModule.GetNPC(presence.UUID, presence.Scene); |
458 | return; | 458 | if (npcData == null || !npcData.SenseAsAgent) |
459 | return; | ||
460 | } | ||
459 | 461 | ||
460 | if ((ts.type & AGENT) == 0 | 462 | if ((ts.type & AGENT) == 0) |
461 | && (presence.PresenceType == PresenceType.User | 463 | { |
462 | || npcModule.GetNPC(presence.UUID, presence.Scene).SenseAsAgent)) | 464 | if (presence.PresenceType == PresenceType.User) |
463 | return; | 465 | { |
466 | return; | ||
467 | } | ||
468 | else | ||
469 | { | ||
470 | INPC npcData = npcModule.GetNPC(presence.UUID, presence.Scene); | ||
471 | if (npcData != null && npcData.SenseAsAgent) | ||
472 | return; | ||
473 | } | ||
474 | } | ||
464 | 475 | ||
465 | if (presence.IsDeleted || presence.IsChildAgent || presence.GodLevel > 0.0) | 476 | if (presence.IsDeleted || presence.IsChildAgent || presence.GodLevel > 0.0) |
466 | return; | 477 | return; |