diff options
author | teravus | 2012-11-06 19:03:41 -0500 |
---|---|---|
committer | teravus | 2012-11-06 19:03:41 -0500 |
commit | b2dfa6f0223ddef2f2366f78b5b0bf9d2bb9a523 (patch) | |
tree | 4ea5a656e4138f401b511b45b22a4e3fcc4f1e61 /OpenSim | |
parent | Update folder version numbers when moving items and making the Delete(string[... (diff) | |
download | opensim-SC_OLD-b2dfa6f0223ddef2f2366f78b5b0bf9d2bb9a523.zip opensim-SC_OLD-b2dfa6f0223ddef2f2366f78b5b0bf9d2bb9a523.tar.gz opensim-SC_OLD-b2dfa6f0223ddef2f2366f78b5b0bf9d2bb9a523.tar.bz2 opensim-SC_OLD-b2dfa6f0223ddef2f2366f78b5b0bf9d2bb9a523.tar.xz |
To keep things consistent allowing an UnregisterModuleInterface... Force the GodModule to request the dialog module interface on a kickuser call and not to use the 'in memory cached one'. Thanks Ar3s for locating the offending inconsistency.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs b/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs index 2e3312f..81ce268 100644 --- a/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs | |||
@@ -121,6 +121,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Gods | |||
121 | 121 | ||
122 | if (sp != null || agentID == kickUserID) | 122 | if (sp != null || agentID == kickUserID) |
123 | { | 123 | { |
124 | m_dialogModule = m_scene.RequestModuleInterface<IDialogModule>(); | ||
124 | if (m_scene.Permissions.IsGod(godID)) | 125 | if (m_scene.Permissions.IsGod(godID)) |
125 | { | 126 | { |
126 | if (kickflags == 0) | 127 | if (kickflags == 0) |
@@ -162,20 +163,27 @@ namespace OpenSim.Region.CoreModules.Avatar.Gods | |||
162 | if (kickflags == 1) | 163 | if (kickflags == 1) |
163 | { | 164 | { |
164 | sp.AllowMovement = false; | 165 | sp.AllowMovement = false; |
165 | m_dialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason)); | 166 | if (m_dialogModule != null) |
166 | m_dialogModule.SendAlertToUser(godID, "User Frozen"); | 167 | { |
168 | m_dialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason)); | ||
169 | m_dialogModule.SendAlertToUser(godID, "User Frozen"); | ||
170 | } | ||
167 | } | 171 | } |
168 | 172 | ||
169 | if (kickflags == 2) | 173 | if (kickflags == 2) |
170 | { | 174 | { |
171 | sp.AllowMovement = true; | 175 | sp.AllowMovement = true; |
172 | m_dialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason)); | 176 | if (m_dialogModule != null) |
173 | m_dialogModule.SendAlertToUser(godID, "User Unfrozen"); | 177 | { |
178 | m_dialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason)); | ||
179 | m_dialogModule.SendAlertToUser(godID, "User Unfrozen"); | ||
180 | } | ||
174 | } | 181 | } |
175 | } | 182 | } |
176 | else | 183 | else |
177 | { | 184 | { |
178 | m_dialogModule.SendAlertToUser(godID, "Kick request denied"); | 185 | if (m_dialogModule != null) |
186 | m_dialogModule.SendAlertToUser(godID, "Kick request denied"); | ||
179 | } | 187 | } |
180 | } | 188 | } |
181 | } | 189 | } |