diff options
author | UbitUmarov | 2014-07-16 16:16:37 +0100 |
---|---|---|
committer | UbitUmarov | 2014-07-16 16:16:37 +0100 |
commit | fc1bd4567db449ddcc99f142027e68e5b890b1f1 (patch) | |
tree | e61e1f2c4f7b6eb09bd427783569827a9bf29855 /OpenSim/Region/Framework | |
parent | Merge branch 'avination-current' of ssh://3dhosting.de/var/git/careminster in... (diff) | |
parent | Differentiate between requests only the owner should be able to do and those (diff) | |
download | opensim-SC-fc1bd4567db449ddcc99f142027e68e5b890b1f1.zip opensim-SC-fc1bd4567db449ddcc99f142027e68e5b890b1f1.tar.gz opensim-SC-fc1bd4567db449ddcc99f142027e68e5b890b1f1.tar.bz2 opensim-SC-fc1bd4567db449ddcc99f142027e68e5b890b1f1.tar.xz |
Merge branch 'avination-current' of ssh://3dhosting.de/var/git/careminster into avination-current
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.Permissions.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 30 |
2 files changed, 19 insertions, 17 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs index 535d87a..4d90726 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Permissions.cs | |||
@@ -70,7 +70,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
70 | public delegate bool IsGridGodHandler(UUID user, Scene requestFromScene); | 70 | public delegate bool IsGridGodHandler(UUID user, Scene requestFromScene); |
71 | public delegate bool IsAdministratorHandler(UUID user); | 71 | public delegate bool IsAdministratorHandler(UUID user); |
72 | public delegate bool EditParcelHandler(UUID user, ILandObject parcel, Scene scene); | 72 | public delegate bool EditParcelHandler(UUID user, ILandObject parcel, Scene scene); |
73 | public delegate bool EditParcelPropertiesHandler(UUID user, ILandObject parcel, GroupPowers p, Scene scene); | 73 | public delegate bool EditParcelPropertiesHandler(UUID user, ILandObject parcel, GroupPowers p, Scene scene, bool allowManager); |
74 | public delegate bool SellParcelHandler(UUID user, ILandObject parcel, Scene scene); | 74 | public delegate bool SellParcelHandler(UUID user, ILandObject parcel, Scene scene); |
75 | public delegate bool AbandonParcelHandler(UUID user, ILandObject parcel, Scene scene); | 75 | public delegate bool AbandonParcelHandler(UUID user, ILandObject parcel, Scene scene); |
76 | public delegate bool ReclaimParcelHandler(UUID user, ILandObject parcel, Scene scene); | 76 | public delegate bool ReclaimParcelHandler(UUID user, ILandObject parcel, Scene scene); |
@@ -763,7 +763,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
763 | 763 | ||
764 | #region EDIT PARCEL | 764 | #region EDIT PARCEL |
765 | 765 | ||
766 | public bool CanEditParcelProperties(UUID user, ILandObject parcel, GroupPowers p) | 766 | public bool CanEditParcelProperties(UUID user, ILandObject parcel, GroupPowers p, bool allowManager) |
767 | { | 767 | { |
768 | EditParcelPropertiesHandler handler = OnEditParcelProperties; | 768 | EditParcelPropertiesHandler handler = OnEditParcelProperties; |
769 | if (handler != null) | 769 | if (handler != null) |
@@ -771,7 +771,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
771 | Delegate[] list = handler.GetInvocationList(); | 771 | Delegate[] list = handler.GetInvocationList(); |
772 | foreach (EditParcelPropertiesHandler h in list) | 772 | foreach (EditParcelPropertiesHandler h in list) |
773 | { | 773 | { |
774 | if (h(user, parcel, p, m_scene) == false) | 774 | if (h(user, parcel, p, m_scene, allowManager) == false) |
775 | return false; | 775 | return false; |
776 | } | 776 | } |
777 | } | 777 | } |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 3e1dcaa..86f60bb 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | |||
@@ -1886,25 +1886,27 @@ namespace OpenSim.Region.Framework.Scenes | |||
1886 | { | 1886 | { |
1887 | SceneObjectPart part = parts[i]; | 1887 | SceneObjectPart part = parts[i]; |
1888 | 1888 | ||
1889 | Scene.ForEachRootScenePresence(delegate(ScenePresence avatar) | 1889 | if (Scene != null) |
1890 | { | 1890 | { |
1891 | if (avatar.ParentID == LocalId) | 1891 | Scene.ForEachRootScenePresence(delegate(ScenePresence avatar) |
1892 | avatar.StandUp(); | ||
1893 | |||
1894 | if (!silent) | ||
1895 | { | 1892 | { |
1896 | part.ClearUpdateSchedule(); | 1893 | if (avatar.ParentID == LocalId) |
1897 | if (part == m_rootPart) | 1894 | avatar.StandUp(); |
1895 | |||
1896 | if (!silent) | ||
1898 | { | 1897 | { |
1899 | if (!IsAttachment | 1898 | part.ClearUpdateSchedule(); |
1900 | || AttachedAvatar == avatar.ControllingClient.AgentId | 1899 | if (part == m_rootPart) |
1901 | || !HasPrivateAttachmentPoint) | 1900 | { |
1902 | avatar.ControllingClient.SendKillObject(m_regionHandle, new List<uint> { part.LocalId }); | 1901 | if (!IsAttachment |
1902 | || AttachedAvatar == avatar.ControllingClient.AgentId | ||
1903 | || !HasPrivateAttachmentPoint) | ||
1904 | avatar.ControllingClient.SendKillObject(m_regionHandle, new List<uint> { part.LocalId }); | ||
1905 | } | ||
1903 | } | 1906 | } |
1904 | } | 1907 | }); |
1905 | }); | 1908 | } |
1906 | } | 1909 | } |
1907 | |||
1908 | } | 1910 | } |
1909 | 1911 | ||
1910 | public void AddScriptLPS(int count) | 1912 | public void AddScriptLPS(int count) |