aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorteravus2012-11-06 19:03:41 -0500
committerteravus2012-11-06 19:03:41 -0500
commitb2dfa6f0223ddef2f2366f78b5b0bf9d2bb9a523 (patch)
tree4ea5a656e4138f401b511b45b22a4e3fcc4f1e61 /OpenSim
parentUpdate folder version numbers when moving items and making the Delete(string[... (diff)
downloadopensim-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.cs18
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 }