aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/ScenePresence.cs
diff options
context:
space:
mode:
authorDr Scofield2009-01-13 08:15:43 +0000
committerDr Scofield2009-01-13 08:15:43 +0000
commit9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a (patch)
tree233c1d3418fd9be2f44174806b55c9afc50775fb /OpenSim/Region/Environment/Scenes/ScenePresence.cs
parent* Extend current stub packet handler test into a really basic one that checks... (diff)
downloadopensim-SC-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.zip
opensim-SC-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.tar.gz
opensim-SC-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.tar.bz2
opensim-SC-9bcaf98e37e9aba10f84e71e85cf8f79bb5f580a.tar.xz
From: Christopher Yeoh <yeohc@au1.ibm.com>
The attached patch adds the automatic granting of PERMISSION_CONTROL_CAMERA on request to a script when an avatar is sitting on the object that the script resides in. It also automatically removes PERMISSION_TAKE_CONTROLS and PERMISSION_CONTROL_CAMERA from the scripts when an avatar stands up. It doesn't remove the other automatically granted permissions but this follows LL server behavior. Removing these two permissions avoids some potential race conditions (accidentally taking control after the avatar has stood up) which may be why LL put them in the first place.
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/ScenePresence.cs')
-rw-r--r--OpenSim/Region/Environment/Scenes/ScenePresence.cs3
1 files changed, 3 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
index 78e3a83..1a3971d 100644
--- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
@@ -1434,6 +1434,9 @@ namespace OpenSim.Region.Environment.Scenes
1434 foreach (UUID taskID in taskIDict.Keys) 1434 foreach (UUID taskID in taskIDict.Keys)
1435 { 1435 {
1436 UnRegisterControlEventsToScript(LocalId, taskID); 1436 UnRegisterControlEventsToScript(LocalId, taskID);
1437 taskIDict[taskID].PermsMask &= ~(
1438 2048 | //PERMISSION_CONTROL_CAMERA
1439 4); // PERMISSION_TAKE_CONTROLS
1437 } 1440 }
1438 } 1441 }
1439 1442