diff options
-rw-r--r-- | OpenSim/Framework/AgentCircuitData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Framework/ChildAgentDataUpdate.cs | 2 | ||||
-rw-r--r-- | OpenSim/Framework/IScene.cs | 13 | ||||
-rw-r--r-- | OpenSim/Framework/ISceneAgent.cs | 7 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 16 | ||||
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs | 22 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 73 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneBase.cs | 5 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 15 | ||||
-rw-r--r-- | OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs | 2 |
11 files changed, 58 insertions, 105 deletions
diff --git a/OpenSim/Framework/AgentCircuitData.cs b/OpenSim/Framework/AgentCircuitData.cs index 12c8ac0..54e1bf7 100644 --- a/OpenSim/Framework/AgentCircuitData.cs +++ b/OpenSim/Framework/AgentCircuitData.cs | |||
@@ -311,7 +311,7 @@ namespace OpenSim.Framework | |||
311 | if (args.ContainsKey("packed_appearance") && (args["packed_appearance"].Type == OSDType.Map)) | 311 | if (args.ContainsKey("packed_appearance") && (args["packed_appearance"].Type == OSDType.Map)) |
312 | { | 312 | { |
313 | Appearance.Unpack((OSDMap)args["packed_appearance"]); | 313 | Appearance.Unpack((OSDMap)args["packed_appearance"]); |
314 | m_log.InfoFormat("[AGENTCIRCUITDATA] unpacked appearance"); | 314 | // m_log.InfoFormat("[AGENTCIRCUITDATA] unpacked appearance"); |
315 | } | 315 | } |
316 | else | 316 | else |
317 | { | 317 | { |
diff --git a/OpenSim/Framework/ChildAgentDataUpdate.cs b/OpenSim/Framework/ChildAgentDataUpdate.cs index 5a4811e..1f22136 100644 --- a/OpenSim/Framework/ChildAgentDataUpdate.cs +++ b/OpenSim/Framework/ChildAgentDataUpdate.cs | |||
@@ -335,7 +335,7 @@ namespace OpenSim.Framework | |||
335 | 335 | ||
336 | public virtual OSDMap Pack() | 336 | public virtual OSDMap Pack() |
337 | { | 337 | { |
338 | m_log.InfoFormat("[CHILDAGENTDATAUPDATE] Pack data"); | 338 | // m_log.InfoFormat("[CHILDAGENTDATAUPDATE] Pack data"); |
339 | 339 | ||
340 | OSDMap args = new OSDMap(); | 340 | OSDMap args = new OSDMap(); |
341 | args["message_type"] = OSD.FromString("AgentData"); | 341 | args["message_type"] = OSD.FromString("AgentData"); |
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs index e0e023d..b2604f4 100644 --- a/OpenSim/Framework/IScene.cs +++ b/OpenSim/Framework/IScene.cs | |||
@@ -89,19 +89,6 @@ namespace OpenSim.Framework | |||
89 | 89 | ||
90 | string GetSimulatorVersion(); | 90 | string GetSimulatorVersion(); |
91 | 91 | ||
92 | /// <summary> | ||
93 | /// Is the agent denoted by the given agentID a child presence in this scene? | ||
94 | /// </summary> | ||
95 | /// <remarks> | ||
96 | /// Used by ClientView when a 'kick everyone' or 'estate message' occurs | ||
97 | /// </remarks> | ||
98 | /// <param name="avatarID">AvatarID to lookup</param> | ||
99 | /// <returns>true if the presence is a child agent, false if the presence is a root exception</returns> | ||
100 | /// <exception cref="System.NullReferenceException"> | ||
101 | /// Thrown if the agent does not exist. | ||
102 | /// </exception> | ||
103 | bool PresenceChildStatus(UUID agentId); | ||
104 | |||
105 | bool TryGetScenePresence(UUID agentID, out object scenePresence); | 92 | bool TryGetScenePresence(UUID agentID, out object scenePresence); |
106 | 93 | ||
107 | /// <summary> | 94 | /// <summary> |
diff --git a/OpenSim/Framework/ISceneAgent.cs b/OpenSim/Framework/ISceneAgent.cs index 69e91ed..824172d 100644 --- a/OpenSim/Framework/ISceneAgent.cs +++ b/OpenSim/Framework/ISceneAgent.cs | |||
@@ -48,6 +48,13 @@ namespace OpenSim.Framework | |||
48 | PresenceType PresenceType { get; } | 48 | PresenceType PresenceType { get; } |
49 | 49 | ||
50 | /// <summary> | 50 | /// <summary> |
51 | /// If true, then the agent has no avatar in the scene. | ||
52 | /// The agent exists to relay data from a region that neighbours the current position of the user's avatar. | ||
53 | /// Occasionally data is relayed, such as which a user clicks an item in a neighbouring region. | ||
54 | /// </summary> | ||
55 | bool IsChildAgent { get; } | ||
56 | |||
57 | /// <summary> | ||
51 | /// Avatar appearance data. | 58 | /// Avatar appearance data. |
52 | /// </summary> | 59 | /// </summary> |
53 | /// <remarks> | 60 | /// <remarks> |
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index af68de6..ace4444 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -548,7 +548,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
548 | 548 | ||
549 | public void Kick(string message) | 549 | public void Kick(string message) |
550 | { | 550 | { |
551 | if (!ChildAgentStatus()) | 551 | if (!SceneAgent.IsChildAgent) |
552 | { | 552 | { |
553 | KickUserPacket kupack = (KickUserPacket)PacketPool.Instance.GetPacket(PacketType.KickUser); | 553 | KickUserPacket kupack = (KickUserPacket)PacketPool.Instance.GetPacket(PacketType.KickUser); |
554 | kupack.UserInfo.AgentID = AgentId; | 554 | kupack.UserInfo.AgentID = AgentId; |
@@ -2465,7 +2465,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
2465 | /// <param name="Message"></param> | 2465 | /// <param name="Message"></param> |
2466 | public void SendBlueBoxMessage(UUID FromAvatarID, String FromAvatarName, String Message) | 2466 | public void SendBlueBoxMessage(UUID FromAvatarID, String FromAvatarName, String Message) |
2467 | { | 2467 | { |
2468 | if (!ChildAgentStatus()) | 2468 | if (!SceneAgent.IsChildAgent) |
2469 | SendInstantMessage(new GridInstantMessage(null, FromAvatarID, FromAvatarName, AgentId, 1, Message, false, new Vector3())); | 2469 | SendInstantMessage(new GridInstantMessage(null, FromAvatarID, FromAvatarName, AgentId, 1, Message, false, new Vector3())); |
2470 | 2470 | ||
2471 | //SendInstantMessage(FromAvatarID, fromSessionID, Message, AgentId, SessionId, FromAvatarName, (byte)21,(uint) Util.UnixTimeSinceEpoch()); | 2471 | //SendInstantMessage(FromAvatarID, fromSessionID, Message, AgentId, SessionId, FromAvatarName, (byte)21,(uint) Util.UnixTimeSinceEpoch()); |
@@ -5112,14 +5112,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5112 | return 0; | 5112 | return 0; |
5113 | } | 5113 | } |
5114 | 5114 | ||
5115 | /// <summary> | ||
5116 | /// This is a utility method used by single states to not duplicate kicks and blue card of death messages. | ||
5117 | /// </summary> | ||
5118 | public bool ChildAgentStatus() | ||
5119 | { | ||
5120 | return m_scene.PresenceChildStatus(AgentId); | ||
5121 | } | ||
5122 | |||
5123 | #endregion | 5115 | #endregion |
5124 | 5116 | ||
5125 | /// <summary> | 5117 | /// <summary> |
@@ -11750,7 +11742,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
11750 | if (logPacket) | 11742 | if (logPacket) |
11751 | m_log.DebugFormat( | 11743 | m_log.DebugFormat( |
11752 | "[CLIENT]: PACKET OUT to {0} ({1}) in {2} - {3}", | 11744 | "[CLIENT]: PACKET OUT to {0} ({1}) in {2} - {3}", |
11753 | Name, ChildAgentStatus() ? "child" : "root ", m_scene.RegionInfo.RegionName, packet.Type); | 11745 | Name, SceneAgent.IsChildAgent ? "child" : "root ", m_scene.RegionInfo.RegionName, packet.Type); |
11754 | } | 11746 | } |
11755 | 11747 | ||
11756 | m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, doAutomaticSplitting, method); | 11748 | m_udpServer.SendPacket(m_udpClient, packet, throttlePacketType, doAutomaticSplitting, method); |
@@ -11807,7 +11799,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
11807 | if (logPacket) | 11799 | if (logPacket) |
11808 | m_log.DebugFormat( | 11800 | m_log.DebugFormat( |
11809 | "[CLIENT]: PACKET IN from {0} ({1}) in {2} - {3}", | 11801 | "[CLIENT]: PACKET IN from {0} ({1}) in {2} - {3}", |
11810 | Name, ChildAgentStatus() ? "child" : "root ", m_scene.RegionInfo.RegionName, packet.Type); | 11802 | Name, SceneAgent.IsChildAgent ? "child" : "root ", m_scene.RegionInfo.RegionName, packet.Type); |
11811 | } | 11803 | } |
11812 | 11804 | ||
11813 | if (!ProcessPacketMethod(packet)) | 11805 | if (!ProcessPacketMethod(packet)) |
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs index d866636..2efb269 100644 --- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs | |||
@@ -320,10 +320,8 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory | |||
320 | 320 | ||
321 | defonly = false; // found a non-default texture reference | 321 | defonly = false; // found a non-default texture reference |
322 | 322 | ||
323 | if (!CheckBakedTextureAsset(sp, face.TextureID, idx)) | 323 | if (m_scene.AssetService.Get(face.TextureID.ToString()) == null) |
324 | { | 324 | { |
325 | // the asset didn't exist if we are only checking, then we found a bad | ||
326 | // one and we're done otherwise, ask for a rebake | ||
327 | if (checkonly) | 325 | if (checkonly) |
328 | return false; | 326 | return false; |
329 | 327 | ||
@@ -337,24 +335,6 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory | |||
337 | return (defonly ? false : true); | 335 | return (defonly ? false : true); |
338 | } | 336 | } |
339 | 337 | ||
340 | /// <summary> | ||
341 | /// Checks for the existance of a baked texture asset and | ||
342 | /// requests the viewer rebake if the asset is not found | ||
343 | /// </summary> | ||
344 | /// <param name="sp"></param> | ||
345 | /// <param name="textureID"></param> | ||
346 | /// <param name="idx"></param> | ||
347 | private bool CheckBakedTextureAsset(IScenePresence sp, UUID textureID, int idx) | ||
348 | { | ||
349 | if (m_scene.AssetService.Get(textureID.ToString()) == null) | ||
350 | { | ||
351 | m_log.InfoFormat("[AVFACTORY]: Missing baked texture {0} ({1}) for avatar {2}", | ||
352 | textureID, idx, sp.Name); | ||
353 | return false; | ||
354 | } | ||
355 | return true; | ||
356 | } | ||
357 | |||
358 | private Dictionary<BakeType, Primitive.TextureEntryFace> GetBakedTextureFaces(ScenePresence sp) | 338 | private Dictionary<BakeType, Primitive.TextureEntryFace> GetBakedTextureFaces(ScenePresence sp) |
359 | { | 339 | { |
360 | if (sp.IsChildAgent) | 340 | if (sp.IsChildAgent) |
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 684745f..a81ee79 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -787,7 +787,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
787 | } | 787 | } |
788 | } | 788 | } |
789 | 789 | ||
790 | m_log.Info("[SCENE]: Using the " + m_priorityScheme + " prioritization scheme"); | 790 | m_log.InfoFormat("[SCENE]: Using the {0} prioritization scheme", m_priorityScheme); |
791 | 791 | ||
792 | #endregion Interest Management | 792 | #endregion Interest Management |
793 | 793 | ||
@@ -918,9 +918,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
918 | } | 918 | } |
919 | else | 919 | else |
920 | { | 920 | { |
921 | m_log.Info("[INTERGRID]: Got notice about far away Region: " + otherRegion.RegionName.ToString() + | 921 | m_log.InfoFormat( |
922 | " at (" + otherRegion.RegionLocX.ToString() + ", " + | 922 | "[INTERGRID]: Got notice about far away Region: {0} at ({1}, {2})", |
923 | otherRegion.RegionLocY.ToString() + ")"); | 923 | otherRegion.RegionName, otherRegion.RegionLocX, otherRegion.RegionLocY); |
924 | } | 924 | } |
925 | } | 925 | } |
926 | } | 926 | } |
@@ -1414,7 +1414,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
1414 | } | 1414 | } |
1415 | catch (AccessViolationException e) | 1415 | catch (AccessViolationException e) |
1416 | { | 1416 | { |
1417 | m_log.Error("[REGION]: Failed with exception " + e.ToString() + " On Region: " + RegionInfo.RegionName); | 1417 | m_log.ErrorFormat( |
1418 | "[REGION]: Failed on region {0} with exception {1}{2}", | ||
1419 | RegionInfo.RegionName, e.Message, e.StackTrace); | ||
1418 | } | 1420 | } |
1419 | //catch (NullReferenceException e) | 1421 | //catch (NullReferenceException e) |
1420 | //{ | 1422 | //{ |
@@ -1422,11 +1424,15 @@ namespace OpenSim.Region.Framework.Scenes | |||
1422 | //} | 1424 | //} |
1423 | catch (InvalidOperationException e) | 1425 | catch (InvalidOperationException e) |
1424 | { | 1426 | { |
1425 | m_log.Error("[REGION]: Failed with exception " + e.ToString() + " On Region: " + RegionInfo.RegionName); | 1427 | m_log.ErrorFormat( |
1428 | "[REGION]: Failed on region {0} with exception {1}{2}", | ||
1429 | RegionInfo.RegionName, e.Message, e.StackTrace); | ||
1426 | } | 1430 | } |
1427 | catch (Exception e) | 1431 | catch (Exception e) |
1428 | { | 1432 | { |
1429 | m_log.Error("[REGION]: Failed with exception " + e.ToString() + " On Region: " + RegionInfo.RegionName); | 1433 | m_log.ErrorFormat( |
1434 | "[REGION]: Failed on region {0} with exception {1}{2}", | ||
1435 | RegionInfo.RegionName, e.Message, e.StackTrace); | ||
1430 | } | 1436 | } |
1431 | 1437 | ||
1432 | maintc = Util.EnvironmentTickCountSubtract(maintc); | 1438 | maintc = Util.EnvironmentTickCountSubtract(maintc); |
@@ -1652,7 +1658,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
1652 | } | 1658 | } |
1653 | catch (IOException e) | 1659 | catch (IOException e) |
1654 | { | 1660 | { |
1655 | m_log.Warn("[TERRAIN]: Scene.cs: LoadWorldMap() - Failed with exception " + e.ToString() + " Regenerating"); | 1661 | m_log.WarnFormat( |
1662 | "[TERRAIN]: Scene.cs: LoadWorldMap() - Regenerating as failed with exception {0}{1}", | ||
1663 | e.Message, e.StackTrace); | ||
1656 | 1664 | ||
1657 | // Non standard region size. If there's an old terrain in the database, it might read past the buffer | 1665 | // Non standard region size. If there's an old terrain in the database, it might read past the buffer |
1658 | #pragma warning disable 0162 | 1666 | #pragma warning disable 0162 |
@@ -1665,7 +1673,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
1665 | } | 1673 | } |
1666 | catch (Exception e) | 1674 | catch (Exception e) |
1667 | { | 1675 | { |
1668 | m_log.Warn("[TERRAIN]: Scene.cs: LoadWorldMap() - Failed with exception " + e.ToString()); | 1676 | m_log.WarnFormat( |
1677 | "[TERRAIN]: Scene.cs: LoadWorldMap() - Failed with exception {0}{1}", e.Message, e.StackTrace); | ||
1669 | } | 1678 | } |
1670 | } | 1679 | } |
1671 | 1680 | ||
@@ -1739,7 +1748,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1739 | 1748 | ||
1740 | List<SceneObjectGroup> PrimsFromDB = SimulationDataService.LoadObjects(regionID); | 1749 | List<SceneObjectGroup> PrimsFromDB = SimulationDataService.LoadObjects(regionID); |
1741 | 1750 | ||
1742 | m_log.Info("[SCENE]: Loaded " + PrimsFromDB.Count + " objects from the datastore"); | 1751 | m_log.InfoFormat("[SCENE]: Loaded {0} objects from the datastore", PrimsFromDB.Count); |
1743 | 1752 | ||
1744 | foreach (SceneObjectGroup group in PrimsFromDB) | 1753 | foreach (SceneObjectGroup group in PrimsFromDB) |
1745 | { | 1754 | { |
@@ -1753,7 +1762,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
1753 | // group.CheckSculptAndLoad(); | 1762 | // group.CheckSculptAndLoad(); |
1754 | } | 1763 | } |
1755 | 1764 | ||
1756 | m_log.Info("[SCENE]: Loaded " + PrimsFromDB.Count.ToString() + " SceneObject(s)"); | ||
1757 | LoadingPrims = false; | 1765 | LoadingPrims = false; |
1758 | EventManager.TriggerPrimsLoaded(this); | 1766 | EventManager.TriggerPrimsLoaded(this); |
1759 | } | 1767 | } |
@@ -2413,7 +2421,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2413 | } | 2421 | } |
2414 | catch (Exception e) | 2422 | catch (Exception e) |
2415 | { | 2423 | { |
2416 | m_log.WarnFormat("[SCENE]: Problem casting object: " + e.ToString()); | 2424 | m_log.WarnFormat("[SCENE]: Problem casting object, exception {0}{1}", e.Message, e.StackTrace); |
2417 | return false; | 2425 | return false; |
2418 | } | 2426 | } |
2419 | 2427 | ||
@@ -2496,8 +2504,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2496 | int flags = GetUserFlags(sceneObject.OwnerID); | 2504 | int flags = GetUserFlags(sceneObject.OwnerID); |
2497 | if (m_regInfo.EstateSettings.IsBanned(sceneObject.OwnerID, flags)) | 2505 | if (m_regInfo.EstateSettings.IsBanned(sceneObject.OwnerID, flags)) |
2498 | { | 2506 | { |
2499 | m_log.Info("[INTERREGION]: Denied prim crossing for " + | 2507 | m_log.InfoFormat("[INTERREGION]: Denied prim crossing for banned avatar {0}", sceneObject.OwnerID); |
2500 | "banned avatar"); | ||
2501 | 2508 | ||
2502 | return false; | 2509 | return false; |
2503 | } | 2510 | } |
@@ -2565,8 +2572,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2565 | { | 2572 | { |
2566 | // Deny non attachments based on parcel settings | 2573 | // Deny non attachments based on parcel settings |
2567 | // | 2574 | // |
2568 | m_log.Info("[INTERREGION]: Denied prim crossing " + | 2575 | m_log.Info("[INTERREGION]: Denied prim crossing because of parcel settings"); |
2569 | "because of parcel settings"); | ||
2570 | 2576 | ||
2571 | DeleteSceneObject(sceneObject, false); | 2577 | DeleteSceneObject(sceneObject, false); |
2572 | 2578 | ||
@@ -2629,7 +2635,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
2629 | // connected. | 2635 | // connected. |
2630 | if (sp == null) | 2636 | if (sp == null) |
2631 | { | 2637 | { |
2632 | m_log.Debug("[SCENE]: Adding new child scene presence " + client.Name + " to scene " + RegionInfo.RegionName); | 2638 | m_log.DebugFormat( |
2639 | "[SCENE]: Adding new child scene presence {0} to scene {1}", client.Name, RegionInfo.RegionName); | ||
2633 | 2640 | ||
2634 | m_clientManager.Add(client); | 2641 | m_clientManager.Add(client); |
2635 | SubscribeToClientEvents(client); | 2642 | SubscribeToClientEvents(client); |
@@ -3277,7 +3284,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3277 | } | 3284 | } |
3278 | catch (Exception e) | 3285 | catch (Exception e) |
3279 | { | 3286 | { |
3280 | m_log.Error("[SCENE] Scene.cs:RemoveClient exception: " + e.ToString()); | 3287 | m_log.ErrorFormat("[SCENE] Scene.cs:RemoveClient exception {0}{1}", e.Message, e.StackTrace); |
3281 | } | 3288 | } |
3282 | m_log.Debug("[Scene] Done. Firing RemoveCircuit"); | 3289 | m_log.Debug("[Scene] Done. Firing RemoveCircuit"); |
3283 | m_authenticateHandler.RemoveCircuit(avatar.ControllingClient.CircuitCode); | 3290 | m_authenticateHandler.RemoveCircuit(avatar.ControllingClient.CircuitCode); |
@@ -3426,7 +3433,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3426 | } | 3433 | } |
3427 | catch (Exception e) | 3434 | catch (Exception e) |
3428 | { | 3435 | { |
3429 | m_log.ErrorFormat("[CONNECTION BEGIN]: Exception verifying presence " + e.ToString()); | 3436 | m_log.ErrorFormat( |
3437 | "[CONNECTION BEGIN]: Exception verifying presence {0}{1}", e.Message, e.StackTrace); | ||
3430 | return false; | 3438 | return false; |
3431 | } | 3439 | } |
3432 | } | 3440 | } |
@@ -3443,7 +3451,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
3443 | } | 3451 | } |
3444 | catch (Exception e) | 3452 | catch (Exception e) |
3445 | { | 3453 | { |
3446 | m_log.ErrorFormat("[CONNECTION BEGIN]: Exception authorizing user " + e.ToString()); | 3454 | m_log.ErrorFormat( |
3455 | "[CONNECTION BEGIN]: Exception authorizing user {0}{1}", e.Message, e.StackTrace); | ||
3447 | return false; | 3456 | return false; |
3448 | } | 3457 | } |
3449 | 3458 | ||
@@ -3664,7 +3673,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
3664 | } | 3673 | } |
3665 | } | 3674 | } |
3666 | else | 3675 | else |
3676 | { | ||
3667 | m_log.ErrorFormat("[CONNECTION BEGIN]: Estate Settings is null!"); | 3677 | m_log.ErrorFormat("[CONNECTION BEGIN]: Estate Settings is null!"); |
3678 | } | ||
3668 | 3679 | ||
3669 | IGroupsModule groupsModule = | 3680 | IGroupsModule groupsModule = |
3670 | RequestModuleInterface<IGroupsModule>(); | 3681 | RequestModuleInterface<IGroupsModule>(); |
@@ -3682,7 +3693,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
3682 | agentGroups.Add(GroupMembership[i].GroupID); | 3693 | agentGroups.Add(GroupMembership[i].GroupID); |
3683 | } | 3694 | } |
3684 | else | 3695 | else |
3696 | { | ||
3685 | m_log.ErrorFormat("[CONNECTION BEGIN]: GroupMembership is null!"); | 3697 | m_log.ErrorFormat("[CONNECTION BEGIN]: GroupMembership is null!"); |
3698 | } | ||
3686 | } | 3699 | } |
3687 | 3700 | ||
3688 | bool groupAccess = false; | 3701 | bool groupAccess = false; |
@@ -3700,7 +3713,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
3700 | } | 3713 | } |
3701 | } | 3714 | } |
3702 | else | 3715 | else |
3716 | { | ||
3703 | m_log.ErrorFormat("[CONNECTION BEGIN]: EstateGroups is null!"); | 3717 | m_log.ErrorFormat("[CONNECTION BEGIN]: EstateGroups is null!"); |
3718 | } | ||
3704 | 3719 | ||
3705 | if (!m_regInfo.EstateSettings.PublicAccess && | 3720 | if (!m_regInfo.EstateSettings.PublicAccess && |
3706 | !m_regInfo.EstateSettings.HasAccess(agent.AgentID) && | 3721 | !m_regInfo.EstateSettings.HasAccess(agent.AgentID) && |
@@ -3817,7 +3832,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3817 | } | 3832 | } |
3818 | catch (Exception e) | 3833 | catch (Exception e) |
3819 | { | 3834 | { |
3820 | m_log.ErrorFormat("[SCENE]: Unable to do agent crossing, exception {0}", e); | 3835 | m_log.ErrorFormat("[SCENE]: Unable to do agent crossing, exception {0}{1}", e.Message, e.StackTrace); |
3821 | } | 3836 | } |
3822 | } | 3837 | } |
3823 | else | 3838 | else |
@@ -4143,7 +4158,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4143 | /// <param name="cmdparams"></param> | 4158 | /// <param name="cmdparams"></param> |
4144 | public void HandleEditCommand(string[] cmdparams) | 4159 | public void HandleEditCommand(string[] cmdparams) |
4145 | { | 4160 | { |
4146 | m_log.Debug("Searching for Primitive: '" + cmdparams[2] + "'"); | 4161 | m_log.DebugFormat("Searching for Primitive: '{0}'", cmdparams[2]); |
4147 | 4162 | ||
4148 | EntityBase[] entityList = GetEntities(); | 4163 | EntityBase[] entityList = GetEntities(); |
4149 | foreach (EntityBase ent in entityList) | 4164 | foreach (EntityBase ent in entityList) |
@@ -4159,7 +4174,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
4159 | new Vector3(Convert.ToSingle(cmdparams[3]), Convert.ToSingle(cmdparams[4]), | 4174 | new Vector3(Convert.ToSingle(cmdparams[3]), Convert.ToSingle(cmdparams[4]), |
4160 | Convert.ToSingle(cmdparams[5]))); | 4175 | Convert.ToSingle(cmdparams[5]))); |
4161 | 4176 | ||
4162 | m_log.Debug("Edited scale of Primitive: " + part.Name); | 4177 | m_log.DebugFormat("Edited scale of Primitive: {0}", part.Name); |
4163 | } | 4178 | } |
4164 | } | 4179 | } |
4165 | } | 4180 | } |
@@ -4188,7 +4203,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
4188 | return LandChannel.GetLandObject((int)x, (int)y).LandData; | 4203 | return LandChannel.GetLandObject((int)x, (int)y).LandData; |
4189 | } | 4204 | } |
4190 | 4205 | ||
4191 | |||
4192 | #endregion | 4206 | #endregion |
4193 | 4207 | ||
4194 | #region Script Engine | 4208 | #region Script Engine |
@@ -4368,17 +4382,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
4368 | } | 4382 | } |
4369 | 4383 | ||
4370 | /// <summary> | 4384 | /// <summary> |
4371 | /// Returns true if scene presence is a child (no avatar in this scene) | ||
4372 | /// </summary> | ||
4373 | /// <param name="avatarID"></param> | ||
4374 | /// <returns></returns> | ||
4375 | public override bool PresenceChildStatus(UUID avatarID) | ||
4376 | { | ||
4377 | ScenePresence sp; | ||
4378 | return TryGetScenePresence(avatarID, out sp) && sp.IsChildAgent; | ||
4379 | } | ||
4380 | |||
4381 | /// <summary> | ||
4382 | /// Performs action on all avatars in the scene (root scene presences) | 4385 | /// Performs action on all avatars in the scene (root scene presences) |
4383 | /// Avatars may be an NPC or a 'real' client. | 4386 | /// Avatars may be an NPC or a 'real' client. |
4384 | /// </summary> | 4387 | /// </summary> |
diff --git a/OpenSim/Region/Framework/Scenes/SceneBase.cs b/OpenSim/Region/Framework/Scenes/SceneBase.cs index 84da700..da3b4dd 100644 --- a/OpenSim/Region/Framework/Scenes/SceneBase.cs +++ b/OpenSim/Region/Framework/Scenes/SceneBase.cs | |||
@@ -213,11 +213,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
213 | } | 213 | } |
214 | 214 | ||
215 | #region admin stuff | 215 | #region admin stuff |
216 | |||
217 | public virtual bool PresenceChildStatus(UUID avatarID) | ||
218 | { | ||
219 | return false; | ||
220 | } | ||
221 | 216 | ||
222 | public abstract void OtherRegionUp(GridRegion otherRegion); | 217 | public abstract void OtherRegionUp(GridRegion otherRegion); |
223 | 218 | ||
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index e2c6a08..5dda9e1 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -624,19 +624,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
624 | } | 624 | } |
625 | } | 625 | } |
626 | 626 | ||
627 | /// <summary> | 627 | public bool IsChildAgent { get; set; } |
628 | /// If this is true, agent doesn't have a representation in this scene. | ||
629 | /// this is an agent 'looking into' this scene from a nearby scene(region) | ||
630 | /// | ||
631 | /// if False, this agent has a representation in this scene | ||
632 | /// </summary> | ||
633 | private bool m_isChildAgent = true; | ||
634 | |||
635 | public bool IsChildAgent | ||
636 | { | ||
637 | get { return m_isChildAgent; } | ||
638 | set { m_isChildAgent = value; } | ||
639 | } | ||
640 | 628 | ||
641 | public uint ParentID | 629 | public uint ParentID |
642 | { | 630 | { |
@@ -753,6 +741,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
753 | { | 741 | { |
754 | AttachmentsSyncLock = new Object(); | 742 | AttachmentsSyncLock = new Object(); |
755 | 743 | ||
744 | IsChildAgent = true; | ||
756 | m_sendCourseLocationsMethod = SendCoarseLocationsDefault; | 745 | m_sendCourseLocationsMethod = SendCoarseLocationsDefault; |
757 | Animator = new ScenePresenceAnimator(this); | 746 | Animator = new ScenePresenceAnimator(this); |
758 | PresenceType = type; | 747 | PresenceType = type; |
diff --git a/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs b/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs index 8f8124e..c754019 100644 --- a/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs +++ b/OpenSim/Region/OptionalModules/Agent/UDP/Linden/LindenUDPInfoModule.cs | |||
@@ -219,7 +219,7 @@ namespace OpenSim.Region.CoreModules.UDP.Linden | |||
219 | { | 219 | { |
220 | if (client is LLClientView) | 220 | if (client is LLClientView) |
221 | { | 221 | { |
222 | bool isChild = scene.PresenceChildStatus(client.AgentId); | 222 | bool isChild = client.SceneAgent.IsChildAgent; |
223 | if (isChild && !showChildren) | 223 | if (isChild && !showChildren) |
224 | return; | 224 | return; |
225 | 225 | ||
@@ -308,7 +308,7 @@ namespace OpenSim.Region.CoreModules.UDP.Linden | |||
308 | { | 308 | { |
309 | if (client is IStatsCollector) | 309 | if (client is IStatsCollector) |
310 | { | 310 | { |
311 | bool isChild = scene.PresenceChildStatus(client.AgentId); | 311 | bool isChild = client.SceneAgent.IsChildAgent; |
312 | if (isChild && !showChildren) | 312 | if (isChild && !showChildren) |
313 | return; | 313 | return; |
314 | 314 | ||
@@ -404,7 +404,7 @@ namespace OpenSim.Region.CoreModules.UDP.Linden | |||
404 | firstClient = false; | 404 | firstClient = false; |
405 | } | 405 | } |
406 | 406 | ||
407 | bool isChild = scene.PresenceChildStatus(client.AgentId); | 407 | bool isChild = client.SceneAgent.IsChildAgent; |
408 | if (isChild && !showChildren) | 408 | if (isChild && !showChildren) |
409 | return; | 409 | return; |
410 | 410 | ||
diff --git a/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs b/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs index 89704d5..40cbc60 100644 --- a/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs +++ b/OpenSim/Region/OptionalModules/Avatar/Appearance/AppearanceInfoModule.cs | |||
@@ -53,7 +53,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.Appearance | |||
53 | public const string SHOW_APPEARANCE_FORMAT = "{0,-9} {1}"; | 53 | public const string SHOW_APPEARANCE_FORMAT = "{0,-9} {1}"; |
54 | 54 | ||
55 | private Dictionary<UUID, Scene> m_scenes = new Dictionary<UUID, Scene>(); | 55 | private Dictionary<UUID, Scene> m_scenes = new Dictionary<UUID, Scene>(); |
56 | private IAvatarFactoryModule m_avatarFactory; | 56 | // private IAvatarFactoryModule m_avatarFactory; |
57 | 57 | ||
58 | public string Name { get { return "Appearance Information Module"; } } | 58 | public string Name { get { return "Appearance Information Module"; } } |
59 | 59 | ||