aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMic Bowman2012-02-13 13:21:42 -0800
committerMic Bowman2012-02-13 13:21:42 -0800
commit04a195266bd68f8c62129246a98aefb3201c90f1 (patch)
treefa87ddcbfdd7fad4dd5fa2dbaf2a8c7b18732c2a /OpenSim/Region
parentMerge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff)
downloadopensim-SC_OLD-04a195266bd68f8c62129246a98aefb3201c90f1.zip
opensim-SC_OLD-04a195266bd68f8c62129246a98aefb3201c90f1.tar.gz
opensim-SC_OLD-04a195266bd68f8c62129246a98aefb3201c90f1.tar.bz2
opensim-SC_OLD-04a195266bd68f8c62129246a98aefb3201c90f1.tar.xz
short circuit the expensive parts of the permission checking code
if the current user is the owner of an object. none of the later checks can reverse the outcome.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs7
1 files changed, 6 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
index cdecd2f..f3c6a30 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -707,7 +707,12 @@ namespace OpenSim.Region.CoreModules.World.Permissions
707 // Object owners should be able to edit their own content 707 // Object owners should be able to edit their own content
708 if (currentUser == objectOwner) 708 if (currentUser == objectOwner)
709 { 709 {
710 permission = true; 710 // there is no way that later code can change this back to false
711 // so just return true immediately and short circuit the more
712 // expensive group checks
713 return true;
714
715 //permission = true;
711 } 716 }
712 else if (group.IsAttachment) 717 else if (group.IsAttachment)
713 { 718 {