aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorUbitUmarov2016-06-28 23:52:00 +0100
committerUbitUmarov2016-06-28 23:52:00 +0100
commit84a6a6e008c64d8197177aff1b42a412e5623638 (patch)
tree5fea809f993fa8b4f822ca953e3fbc3e2c558e14 /OpenSim
parent if a NPC is owned, allow access if ownerID matchs parcel owner or it is in t... (diff)
downloadopensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.zip
opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.tar.gz
opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.tar.bz2
opensim-SC-84a6a6e008c64d8197177aff1b42a412e5623638.tar.xz
don't try to send initial AgentGroupDataUpdate to NPCs
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Addons/Groups/GroupsModule.cs13
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs13
2 files changed, 6 insertions, 20 deletions
diff --git a/OpenSim/Addons/Groups/GroupsModule.cs b/OpenSim/Addons/Groups/GroupsModule.cs
index 3336e94..2d5ebea 100644
--- a/OpenSim/Addons/Groups/GroupsModule.cs
+++ b/OpenSim/Addons/Groups/GroupsModule.cs
@@ -249,7 +249,8 @@ namespace OpenSim.Groups
249 // There might be some problem with the thread we're generating this on but not 249 // There might be some problem with the thread we're generating this on but not
250 // doing the update at this time causes problems (Mantis #7920 and #7915) 250 // doing the update at this time causes problems (Mantis #7920 and #7915)
251 // TODO: move sending this update to a later time in the rootification of the client. 251 // TODO: move sending this update to a later time in the rootification of the client.
252 SendAgentGroupDataUpdate(sp.ControllingClient, false); 252 if(!sp.isNPC)
253 SendAgentGroupDataUpdate(sp.ControllingClient, false);
253 } 254 }
254 255
255 private void OnMakeChild(ScenePresence sp) 256 private void OnMakeChild(ScenePresence sp)
@@ -1265,11 +1266,6 @@ namespace OpenSim.Groups
1265 { 1266 {
1266 if (m_debugEnabled) m_log.InfoFormat("[Groups]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name); 1267 if (m_debugEnabled) m_log.InfoFormat("[Groups]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name);
1267 1268
1268 // NPCs currently don't have a CAPs structure or event queues. There is a strong argument for conveying this information
1269 // to them anyway since it makes writing server-side bots a lot easier, but for now we don't do anything.
1270 if (remoteClient.SceneAgent.PresenceType == PresenceType.Npc)
1271 return;
1272
1273 // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff 1269 // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff
1274 1270
1275 UUID agentID = GetRequestingAgentID(remoteClient); 1271 UUID agentID = GetRequestingAgentID(remoteClient);
@@ -1278,10 +1274,7 @@ namespace OpenSim.Groups
1278 1274
1279 GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); 1275 GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID);
1280 IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); 1276 IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>();
1281 if (eq != null) 1277 eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray);
1282 eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray);
1283 else
1284 remoteClient.SendGroupMembership(membershipArray);
1285 1278
1286 remoteClient.RefreshGroupMembership(); 1279 remoteClient.RefreshGroupMembership();
1287 } 1280 }
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
index 62f863b..d6bf552 100644
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/GroupsModule.cs
@@ -271,7 +271,8 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
271 // There might be some problem with the thread we're generating this on but not 271 // There might be some problem with the thread we're generating this on but not
272 // doing the update at this time causes problems (Mantis #7920 and #7915) 272 // doing the update at this time causes problems (Mantis #7920 and #7915)
273 // TODO: move sending this update to a later time in the rootification of the client. 273 // TODO: move sending this update to a later time in the rootification of the client.
274 SendAgentGroupDataUpdate(sp.ControllingClient, false); 274 if(!sp.isNPC)
275 SendAgentGroupDataUpdate(sp.ControllingClient, false);
275 } 276 }
276 277
277 private void OnMakeChild(ScenePresence sp) 278 private void OnMakeChild(ScenePresence sp)
@@ -1387,11 +1388,6 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
1387 { 1388 {
1388 if (m_debugEnabled) m_log.InfoFormat("[GROUPS]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name); 1389 if (m_debugEnabled) m_log.InfoFormat("[GROUPS]: {0} called for {1}", System.Reflection.MethodBase.GetCurrentMethod().Name, remoteClient.Name);
1389 1390
1390 // NPCs currently don't have a CAPs structure or event queues. There is a strong argument for conveying this information
1391 // to them anyway since it makes writing server-side bots a lot easier, but for now we don't do anything.
1392 if (remoteClient.SceneAgent.PresenceType == PresenceType.Npc)
1393 return;
1394
1395 // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff 1391 // TODO: All the client update functions need to be reexamined because most do too much and send too much stuff
1396 1392
1397 UUID agentID = GetRequestingAgentID(remoteClient); 1393 UUID agentID = GetRequestingAgentID(remoteClient);
@@ -1400,10 +1396,7 @@ namespace OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups
1400 1396
1401 GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID); 1397 GroupMembershipData[] membershipArray = GetProfileListedGroupMemberships(remoteClient, agentID);
1402 IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>(); 1398 IEventQueue eq = remoteClient.Scene.RequestModuleInterface<IEventQueue>();
1403 if (eq != null) 1399 eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray);
1404 eq.GroupMembershipData(GetRequestingAgentID(remoteClient), dataForClientID, membershipArray);
1405 else
1406 remoteClient.SendGroupMembership(membershipArray);
1407 1400
1408 remoteClient.RefreshGroupMembership(); 1401 remoteClient.RefreshGroupMembership();
1409 } 1402 }